如何在模型优先EF 4中永久自定义表映射详细信息?

时间:2011-05-10 19:09:38

标签: c# entity-framework

是否可以永久更改EF 4模型中实体的映射详细信息?我希望能够将实体映射到特定的表和列名称。我可以在实体设计器中执行此操作,但是当我使用“从模型生成数据库”来创建部署SQL脚本时,这些自定义映射将被销毁。

我需要这样做的原因是,虽然我可以控制大多数表定义,但在少数情况下,我需要使用外部应用程序所需的特定表定义。这些表和列是(IMO)命名不佳的,我想在我的C#代码中为关联实体使用更友好的名称。

1 个答案:

答案 0 :(得分:1)

是的,有办法,但要做很多工作。您必须使用定义期望名称的自定义structural annotation,并且必须修改用于MSL和SSDL生成的T4模板,这将使用注释中的名称而不是属性名称(我希望它的工作方式与它相同)适用于SQL脚本生成)。它仅适用于EFv4。