对于可在经典LAN网络(1台服务器和最多25台客户端)上运行的基本ERP(具有大约150个表的数据库,WinForm应用程序),您会推荐EF4或DataSet吗?
LINQ2SQL不是一个选项!
答案 0 :(得分:6)
EF4。 DataSet是一项古老的技术,EF在很多方面都是对数据集问题的反应。
我们最近构建了一个应用程序,其中一部分是80个表上的CRUD操作。在EF之前,我们将使用Enterprise Library和DataSet。我们估计每个表用1小时来编写CRUD操作和单元测试。使用EF,这主要由自动生成的代码替换。
答案 1 :(得分:4)
您可以根据应用程序逻辑选择EF,EF可以为您提供更多选项,但我认为我们无法根据表格数量来决定。
查看本文将帮助您做出决定:
答案 2 :(得分:2)
这是一个相当开放的问题,没有太多的支持信息。这种决定涉及很多因素。是你开发还是团队。无论哪种方式,您对EF有什么经验?如果您没有很多经验并且时间紧迫,那么使用数据集完成工作可能会更快。
除了这些类型的问题,我是ORM的忠实粉丝,我认为从长远来看,它会让生活更轻松。但如果你不熟悉某些概念,特别是陷阱(如选择N + 1问题),它确实有一个学习曲线。
答案 3 :(得分:2)
即使您不选择EF4,DataSet也不是唯一的选择。
我使用POCOs 非常宁愿工作而不是DataSet。
对象比DataSet更容易操作。例如,验证POCO中的数据是微不足道的,并且易于维护。在DataSet中,它既不是。