如何从EDM创建数据库?
如何从实体数据模型创建数据库。
因此,我使用Visual Studio 2008中的EDM设计器创建了一个数据库,现在我想生成SQL Server架构以在SQL Server中创建存储。
解决方案
回答
据我了解,我们不仅仅应该将EDM用作"漂亮"的数据库设计器,实际上EDM并不依赖于特定的存储层。它尝试为开发人员抽象该部分。有设计模式(CSDL)和存储模式(SSDL)。无论如何,不要说要教你。 ;)
有EDM Generator,可用于创建模型和类等。对于DDL类型的导出,我从来没有做过,但是我所做的是将EDM映射到现有数据库,这对我来说更容易获得开始。
在MSDN上有一个很棒的教程,其中详细介绍了如何使用现有数据库的逐步说明,还涉及了从头开始的方法。
http://msdn.microsoft.com/zh-CN/magazine/cc163286.aspx
回答
计划在将来的Entity Framework版本中使用功能"从模型生成数据库架构"。 V1不支持基于EF模型的架构生成。
回答
我相信其他答案也暗示了这一点,但为了明确起见,请使用SSMS(或者相当勇敢的个人,而不使用SQL Server提供程序,则等效)设计数据库布局,然后将其吸收到EDM中,然后将应用程序更改应用于该模型所必需的。
我花了大约一个小时尝试首先按照自己的方式进行操作(其他Java ORM工具的剩余习惯),最终我放弃了,现在以"正确的方式"(tm)进行操作
最终,具有从模型功能生成数据库的模式(如JRoppert所示)会很好,然后可以自动获取各种DB风格的DDL。
回答
从模型生成数据库是Entity Framework vNext计划的一项功能。
请查看Entity Framework Design的此博客文章,其中解释了从模型生成数据库的计划功能。
我们现在必须要做的是1)手动生成数据库,或者2)解析CSDL文件并编写自己的生成器。我认为选项1)可能是更好的选择。