0

我正在调用一个存储过程,该过程需要表值参数。为存储过程生成表参数接受表值参数

我知道以下选项来传递此参数:创建DataTable,DbDataReaderIList<SqlDataRecord>

我使用的是IList<SqlDataRecord>(使用DataTable是类似的),但它涉及到编写大量样板代码:创建集合,设置每个列的类型,添加行,设置每个单元格的值。

我认为这正是Entity Framework应该实现自动化的代码类型。所以我希望定义C#类匹配SQL TVP类型,添加常用的EF属性,创建这些对象的集合,并让EF在我的集合上实现DbDataReaderIList<SqlDataRecord>。但我找不到任何方法去做 - 例如有EntityDataReader,但这是从SQL读取 - 没有实现,我可以找到实现任何合适的接口上的内存集合。

任何建议,在我开始使用Reflection自己写之前?

+0

与此问题相关 - 查看我的答案(基本上我做了反射位+允许额外配置):http://stackoverflow.com/questions/8157345/entity-framework -stored-过程的表值参数 –

回答