我正在尝试使用Entity Framework Database First将数据列表从C#传递到SQL Server存储过程。在SO和其他地方有许多关于问题的文章,但是不清楚哪些是指向存储过程传递变量数据,哪些是从数据库返回变量数据。它们也倾向于专注于调用存储过程的代码,但我无法做到这一点。在SSMS中创建并测试了用户定义的表类型和存储过程。问题发生在C#中。更新模型(.edmx文件)时,会发出此警告:“Warning 4 Error 6005:函数'uspGetBusyPersonsTVP'具有参数'list',该参数位于参数索引2处,具有数据类型'表类型',该数据类型目前不支持目标Entity Framework版本。该函数已被排除。”在Model Browser中进行检查,显示存储过程已在模型中创建,但仅具有非TVP参数。此MSDN网站https://msdn.microsoft.com/en-us/data/hh859577.aspx表示自EF 5.0以来支持表值参数,但该文章只谈论返回数据。
我刚刚完成更新,现在使用的是Visual Studio 2015 Community、.Net 4.6和Entity Framework 6.1.3。有人知道是否可以将TVP传递给存储过程,或者它是否有可能被支持?