我已经请求创建一个应用程序,该应用程序使用带有存储过程(insert
,update
,delete
)的现有数据库,并且他们不想使用Entity Framework
。
一种方法是使用 System.Data.DataSet
创建我自己的数据访问层,但我想知道是否有任何现有的库或我可以使用的东西来填充 SP 的对象并使用 SP 更新数据。
有什么线索吗?
您可以使用像 Dapper 这样的微型或程序,它简单、高效且正确映射到对象。
使用示例 :
// Call spGetUser with a parameter Id and put the result in a User instance.
var user = cnn.Query<User>("spGetUser", new {Id = 1},
commandType: CommandType.StoredProcedure).SingleOrDefault();
如果你真的想走这条路,你可以使用自动映射器
看看这篇文章如何使用自动映射器映射具有多个表的数据集
不过,请记住,性能实际上可能非常糟糕。
恕我直言,EF 将是更好的选择。
我通常建议使用Dapper。 它非常轻巧,其性能与 ADO.NET 编码相当。