如何解决从.edmx文件生成SQL模式时,是否可以为属性生成其他列名?
| 我已经“继承”了一个EF 4.0“ 0”文件。当前,给定的属性名称和列名称在生成的C#和sql模式中是相同的。此后,我已经升级到EF 4.1,并更改了代码生成项,以生成DbContext
而不是ObjectContext
。
我想做的是生成一个sql模式,其中的列名可能不同。例如,假设我有一个Product
的Id
属性/列;我想为该类生成Id
(通过T4模板生成),为该列生成ProductId
(以某种方式通过图中的“从模型生成数据库...”上下文菜单项),然后使用基于代码的流利配置功能来生成通过EntityTypeConfiguration<T>.HasColumnName()
映射两个。
我可以这样做还是有合理的选择?我意识到我可以使用4.1在代码中完成所有操作,但是想知道这种“过渡”方法是否可行。
解决方法
我放弃了这一点,转而采用完全代码优先的方式,但是我认为有一种方法可以做到这一点:
在模型中,使用列名。
从“ 0”生成SQL。
在T4模板中,从某种映射文件(例如csv)中读取并应用一些逻辑,以根据需要生成C#类并生成“ 9”调用。
这应该可以,但是比我创建正确的模板要付出的努力更多。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。