我正在使用EF 5开发Windows表单应用程序,并开始使用Code First方法构建数据库。 我的问题是:" Code first方法首先与数据库相比有一些限制,或者模型优先" ? 有什么建议吗?
答案 0 :(得分:1)
具体而言(我将跳过一般的概述),
最困扰我的是缺少原生支持 各种Db对象,视图,UDF,sp-s 含义 - 当然,您可以使用它们 - 但您必须“注入” SQL并与“C#POCO”同步
您现在可以解决大部分问题 - 例如UDF,SP-s可以通过SQL查询调用 - 并映射回来。
话虽如此 - 没有真正的支持,如果你习惯于在Db方面工作 - 那可能会有点痛苦。即当你决定数据库的每个方面时,你必须放弃一点'完全控制',并且可以进行调整和调整。你可以做大部分工作,但保持同步并不容易。
其他“第一”选项 - 在这个意义上更为先进。
在性能方面 - 代码优先是the most involved
- 即它没有预先生成(开箱即用),这增加了加载时间。但是,与其他EF选项相比,这个问题越来越少 - EF Power Tools可以通过使用sort of views
(没有与Db视图无关)来代码生成其中的一些来提高性能。
总的来说,我也经常使用它 - 因为它是最“灵活”的IMO,值得付出额外的努力。
答案 1 :(得分:0)