एक उपयोगकर्ता परिभाषित प्रकार के समान सेटअप करें।
CREATE TYPE [dbo].[tableOf_Ints] AS TABLE(
[ID] [int] NULL
)
GO
फिर आप इसे इस तरह इस्तेमाल कर सकते हैं।
public static SqlCommand CreateCommand(List<int> ints)
{
var dt = new DataTable();
dt.Columns.Add("ID",typeof(Int32));
for (int i = 0; i < ints.Count; i++)
{
dt.Rows.Add(ints[i]);
}
SqlCommand cmd = new SqlCommand("SomeStoredProc");
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandTimeout = 120;
var param1 = cmd.Parameters.AddWithValue("@SomeParam", dt);
param1.SqlDbType = SqlDbType.Structured;
param1.TypeName = "dbo.tableOf_Ints";
return cmd;
}
मान लें कि आपके पास इस तरह एक संग्रहित खरीद है।
CREATE PROCEDURE [dbo].[SomeStoredProc]
@SomeParam TableOf_Ints READONLY
AS
BEGIN
END