我的 SQL 数据库有驼峰式的列名。我正在使用带有 C# 的 Linq to SQL。
有没有办法强制在帕斯卡情况下自动生成属性?
驼峰式属性不符合 C# 标准,每次我需要重新创建类时手动执行它很痛苦。
我的 SQL 数据库有驼峰式的列名。我正在使用带有 C# 的 Linq to SQL。
有没有办法强制在帕斯卡情况下自动生成属性?
驼峰式属性不符合 C# 标准,每次我需要重新创建类时手动执行它很痛苦。
如果您的数据库非常大并且手动重命名实体非常耗时,那么:
CSharpDataClasses.tt
和L2ST4.ttinclude
.`CSharpDataClasses.tt
以匹配您的dbml
文件名(例如Northwind.tt
)dmbl
文件(例如Northwind.dbml
)并MSLinqToSQLGenerator
从Custom Tool
属性中删除。L2ST4.ttinclude
按照进一步描述打开并更改它Northwind.tt
文件并按下Ctrl+S
(这将运行 LINQ 2 SQL 类生成)。L2ST4.ttinclude 文件更改:
找到类的定义Data
(在文件的顶部)并将此代码粘贴到它之前:
class Lazy
{
public static string FirstLetterToUpper(string str)
{
return Char.ToUpper(str[0]) + str.Substring(1);
}
}
然后找到类的定义Table
并在构造函数中将Member
属性初始化替换为
Member = Lazy.FirstLetterToUpper((String)xe.Attribute("Member"));
查找类Class
并在构造函数中将Name
属性初始化替换为
Name = Lazy.FirstLetterToUpper((String) xe.Attribute("Name"));
最后,Association
在其构造函数集中找到类
typeName = Lazy.FirstLetterToUpper((String) xe.Attribute("Type"));
PS如果你真的很懒,那么使用我已经更改的这个 L2ST4.ttinclude 文件:)
我建议 T4 项目l2st4.codeplex.com的 LINQ to SQL 模板。您可以根据需要自定义它。