'逆向工程师'模型优先 - 删除表和列前缀

时间:2014-07-16 17:35:24

标签: c# sql entity-framework visual-studio-2013 entity-framework-6

我正在使用'反向工程师从现有数据库开发EF模型。模型 - VS2013更新的第一个特性3.不幸的是,我没有完全控制数据库模式,它使用表和列前缀(例如tblPerson,cFirstName,cLastName)。如果可能的话,我宁愿不将这些前缀复制到我的模型类和属性中。是否容易促进这种“移除”#39;每当使用EF6重新生成模型时,前缀是什么,或者我最终会编写大量代码并使用拜占庭再生过程来实现这一目标?

1 个答案:

答案 0 :(得分:1)

我决心解决这个问题的方法是使用T4模板。我热衷于使用VS2013中现有的“逆向工程师Code-First from database”选项。不太清楚的是,您可以使用T4模板来修改生成的代码。缺少的步骤是使用包管理器控制台安装和修改默认T4模板 - 请参阅http://msdn.microsoft.com/en-us/data/dn753860

所以你基本上在你的T4模板中得到这样的东西(粗略的代码仅用于说明目的):

var charsToTrim = "abcdefghijklmnopqrstuvwxyz".ToCharArray();
var className = code.Type(entityType).ToString().TrimStart(charsToTrim);
相关问题