c# - 面对没有主键约束的表时,Dapper 或 ADO.NET

标签 c# asp.net asp.net-mvc ado.net dapper

引用这篇文章

Using ASP.Net MVC with Classic ADO.Net

我需要一些关于使用我无权更改的数据库构建 MVC 应用程序的帮助,该数据库的表没有主键,有些表没有主键可辨别的唯一字段组合用作复合键。

我只有一些关于 Entity Framework 和 ADO.NET 的基本经验..所以我觉得示例帖子是一个不错的选择。

我也对是否 http://code.google.com/p/dapper-dot-net/ 感兴趣也可以实现我想做的事情,是否值得花时间学习然后自己编写数据访问?考虑到我在这两方面都没有丰富的经验。

对此的任何帮助都会很棒。谢谢

最佳答案

与滚动您自己的数据访问相比,dapper 的一个主要好处是将数据映射到 POCO,这大大简化了将查询转换为域对象的过程。我们最近从完整的 ORM (NHibernate) 迁移到 dapper,并发现 dapper 的自动映射的好处以及处理我们自己的查询的能力非常好。

这将取决于什么最适合您和您的团队,但学习 dapper 只能为您的工具箱添加另一个有用的工具。

此外,如果您对 ado.net dapper 感到满意,那么精神上的跳跃确实不会太大。

就您无法更改的不良数据库设计而言,无论您如何访问它,它都将始终成为您的瓶颈,实际上没有什么可以替代主键作为数据存储的最低要求,但是dapper 应该让您作为开发人员的生活更加舒适!

关于c# - 面对没有主键约束的表时,Dapper 或 ADO.NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13632032/

相关文章:

c# - 在 Linux 上使用 Mono 进行 native P/调用 : DllNotFound

c# - 如何使用 Ninject 泛型将接口(interface)绑定(bind)到类?

c# - 在 ASP.NET Core 中使用 Cookie 进行身份验证

c# - 如何从xamarin表单应用程序将图像上传到服务器

c# - 如何在 asp mvc 中从 Controller 接收 Ajax 数据值

javascript - MVC View 文件 _Layout.cshtml 中 head 和 body 的 Render Bundle 之间的区别

c# - 如何在Azure blob存储中保留空目录?

c# - 访问 ListView CellTemplate UIElements

c# - 如何使 c# exe 人为变大?

c# - 等待手动创建的任务正在卡住 ASP.NET 应用程序