不确定如何通过Dapper这样做,但我有一个像这样的自定义类型:
CREATE TYPE [dbo].[udtCustomerIds] AS TABLE
(
[CustomerId] int
)
然后有一个sproc期望将其作为参数传递:
CREATE PROCEDURE [dbo].[uspGetCustomerByCustomerIDs]
@udtCustomerIds udtCustomerIds READONLY
AS
SELECT [CustomerId] FROM [Customer] C INNER JOIN C.CustomerId = udtCustomerIds.CustomerId
我的C#代码如下所示:
var ids = new int[] { 3530, 3567, 21852, 41745 };
var x = connection.Query<List<int>>("dbo.uspGetCustomerByCustomerIDs", new { CustomerIds = ids }, commandType: CommandType.StoredProcedure);
有什么想法吗?如何使用Dapper,将UDT传递给sproc?
获取错误:
程序或函数 uspGetCustomerByCustomerIDs 指定了太多参数。