有没有办法从EDMX模型生成数据库而不是所有的表名都是多元化的?

时间:2013-01-12 19:46:07

标签: entity-framework entity-framework-4 entity-framework-5

我忘了在我的Git仓库中添加一个数据库创建脚本,以便将工作带回家。哈,我想,我有多幸运能从我的EDMX模型中生成DB DDL,但是血腥的东西会使用实体集名称来表名,而不是实体名。这打破了我从血腥水中做家庭作业的野心。

本书中是否有任何技巧可以避免这种情况并将我的原始表名恢复原状?

2 个答案:

答案 0 :(得分:0)

如果您进入实体设计器,选择实体并编辑实体集属性,则可以为每个实体显式设置表名。不幸的是,这也会改变ObjectContext上集合属性的名称。

奇怪的是,当我只更改了EDMX中CSDL实体的名称而不是SSDL实体时,但是当我生成脚本时,它使用了CSDL实体中的名称(而不是人们期望的SSDL实体)。 EF设计师非常奇怪。

Ones解决方案是使用Code First,您可以通过属性明确控制映射。

答案 1 :(得分:0)

我可以建议一个黑客,但我没有尝试过,所以我不知道结果,这需要一些工作,据说,创建一个DbContext实现(只是一个骨架) )使用空模型类创建真实模型的精确模型,然后使用Entity Framework Power Tools通过单击DbContext文件为您生成DDL代码(我知道它需要一些工作)。 / p>