我想从头开始创建一个项目。我将使用asp .net mvc4(带有asp网络api)以及用于数据访问的实体框架(所有最新技术)建议从头开始一个实体框架代码第一个项目
由于这是一个全新的开始,我一直在考虑将我的设计集中在我的模型上而不是首先创建数据库然后创建EF模型,所以我尽管会采用代码优先的方法。
代码优先的问题(据我所知)是你失去了EF在模型优先场景中为你做的所有脚手架(设计支持,轻松生成和维护实体关系1-1,1- * ,-等) 问题是:在设计我的模型时,我可以使用什么工具或模板或片段或其他方法使我的生活更轻松?我希望这个过程尽可能无痛苦,因为它涉及很多重复(例如,FK关系总是相同的) 我应该使用DbContext还是其他?有什么方法可以首先启动代码,但同时维护一个edmx模型,还是那些是互斥的?
谢谢!
听起来像你只是想使用模型第一。 Code First适用于那些不想让模型设计师惹恼的人。 –
这很好,我没有与模型设计师混淆,实际上,我更喜欢尽可能多地控制我所拥有的,并以我的模型为中心。但是,无论如何,我需要设置所有东西:类,约束等之间的关系,这些关系最终会在生成的数据库中结束。我想知道的是我可以使用哪些工具来帮助脚手架重复执行任务 –
例如,通过集合属性和外键属性在您构建的类中定义关系。您可以使用DataAnnotations或Fluent Configuration来为数据库生成定义各种约束和提示。至于脚手架的重复性任务,这确实超出了EF的范围。 –