Skip to content

DataAccess.ParamSize

Igor Tkachev edited this page May 22, 2016 · 1 revision

Home / DataAccess

The ParamSize can be used to specify db parameter size.

Param.cs

using System;
using System.Data;

using NUnit.Framework;

using BLToolkit.Data;
using BLToolkit.DataAccess;

namespace HowTo.DataAccess
{
    [TestFixture]
    public class Param
    {
        public abstract class TestAccessor : DataAccessor
        {
            [SqlQuery("SELECT {0} = {1} FROM Person WHERE PersonID = 1")]
            public abstract void SelectJohn(
                [ParamSize(50), ParamDbType(DbType.String)] out string name,
                [Format] string paramName,
                [Format] string fieldName);
        }

        [Test]
        public void AccessorTest()
        {
            using (DbManager db = new DbManager())
            {
                TestAccessor ta = DataAccessor.CreateInstance<TestAccessor>(db);

                string actualName;

                ta.SelectJohn(out actualName, "@name", "FirstName");

                Assert.AreEqual("John", actualName);
            }
        }
    }
}

App.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <connectionStrings>
        <add
            name             = "DemoConnection"
            connectionString = "Server=.;Database=BLToolkitData;Integrated Security=SSPI"
            providerName     = "System.Data.SqlClient" />
    </connectionStrings>
</configuration>

CreateSql

Clone this wiki locally