6

我一直在使用 Entity Framework 4 和 SQL Server。我发现的主要问题是数据库中的表名都是小写并且有下划线。这意味着当我在 Visual Studio 中创建实体时,类和属性都是带有下划线的小写字母。有没有办法为创建的类实现 Pascal 大小写和属性的 Camel 大小写?

例如:

table_name--> 转换为 TableName

是否需要添加任何其他模板或任何其他方式来实现这一点。

不建议手动编辑类名和属性,因为我有大量实体

4

2 回答 2

2

为什么不使用 T4 模板来生成实体类?这样,您可以添加一种将表名转换为您选择的约定的方法。

VS 带有几个用于 EF 的内置 T4 模板,因此您很可能只需选择其中一个并对其进行修改。我不建议从头开始编写自己的!

如果您以前没有使用过 T4 模板,快速入门是在设计器中打开您的 EF 模型,右键单击设计图面的空白部分并选择“添加代码生成项”。这将打开一个对话框,其中包含已安装的 EF T4 模板,您可以选择您认为最合适的任何一个。

然后,您可以在解决方案资源管理器中右键单击 T4 模板文件(它将具有 .tt 扩展名)并选择“运行自定义工具”以自行生成实体。您可以编辑 .tt 文件(它只是一个纯文本文件,包含一些看起来非常像 VBScript 的东西!)并进行修改。然后再次运行自定义工具,查看生成的实体是否具有正确的名称。

希望这可以帮助。

于 2013-03-01T14:51:44.203 回答
0

以下博客文章对如何执行此操作有很好的回应。它涉及修改创建数据模型时创建的 T4 模板文件。

http://khalidk7.wordpress.com/2014/04/21/entity-framework-ef-t4-template-modification-to-output-pascalcasing-database-objects/

于 2014-07-06T15:32:05.720 回答