DataSetTable

BLToolkit.NET

Business Logic Toolkit for .NET www.bltoolkit.net
 

The DataSetTable attribute specifies table to be populated by the method in destination or returning dataset.

DataSetTable.cs
using System;
using System.Data;

using NUnit.Framework;

using BLToolkit.DataAccess;

namespace HowTo.DataAccess
{
    [TestFixture]
    public class DataSetTable
    {
        public abstract class TestAccessor : DataAccessor
        {
            [SprocName("Person_SelectAll"), DataSetTable("First")]
            public abstract void SelectFirstTable  ([Destination] DataSet ds);

            [SprocName("Person_SelectAll"), DataSetTable("Second")]
            public abstract void SelectSecondTable ([Destination] DataSet ds);

            [SprocName("Person_SelectAll"), DataSetTable(0)]
            public abstract void SelectFirstTable2 ([Destination] DataSet ds);

            [SprocName("Person_SelectAll"), DataSetTable(1)]
            public abstract void SelectSecondTable2([Destination] DataSet ds);
        }

        [Test]
        public void Test()
        {
            TestAccessor ta = DataAccessor.CreateInstance<TestAccessor>();

            DataSet ds = new DataSet();

            ta.SelectFirstTable  (ds);
            ta.SelectSecondTable (ds);
            ta.SelectFirstTable2 (ds);
            ta.SelectSecondTable2(ds);

            Assert.IsTrue (ds.Tables.Contains("First"),  "Table 'First'  not found");
            Assert.IsTrue (ds.Tables.Contains("Second"), "Table 'Second' not found");
            Assert.IsFalse(ds.Tables.Contains("Table"),  "Table 'Table'  was found");
        }
    }
}
App.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add
            key   = "ConnectionString"
            value = "Server=.;Database=BLToolkitData;Integrated Security=SSPI"/>
    </appSettings>
</configuration>
Create.sql script
 
© 2010 www.bltoolkit.net
[email protected]