要清楚,我不是要求一个并排的比较,已经在这个SO上面提到了“恶心”.我也不问
Linq2sql是否死了,因为我不在乎.我问的是这个….
我正在为一个非营利组织构建内部应用程序.我是工作人员的唯一开发人员.我们一直使用sql Server作为我们的数据库后端.我也设计和构建数据库.我已经使用L2S成功了几次.
考虑到这一点,有人能给我一个引人注目的理由来使用EF而不是L2S吗?
我在本周末在代码营,经过一个小时的EF演示,所有这些都可以在L2S中完成,我问了同样的问题.演讲者的答案是,“L2S死了…”很好!不! (see here)
我明白EF是我们以后要使用的MS(see here),它提供了更多的定制选项.我无法想像的是,如果在这种环境中,任何一个或那个对我来说都是重要的.
我们在这里遇到的一个特别的问题是我继承了基于4个不同sql数据库的Core App. L2S有很大困难,但是当我问上述演讲者时,EF会帮助我在这方面他说“不!”
解决方法
使用EF,您可以在类对象和数据库表之间获取映射图层(即您的实体).如果您需要这种灵活性,或者喜欢
domain-driven design型号(而不是桌面设计),则EF可能值得考虑. Linq to sql几乎是一个类到表的映射器.