版权声明:作者:石头@很想你~ https://blog.csdn.net/qq_36036735/article/details/84943091
通过tt模板(读取数据库说明)生成代码备注
1,在 public class CodeStringGenerator 类中添加如下方法:
public string GetRemark(EdmProperty edmProperty)
{
var tableName = edmProperty.DeclaringType.Name;
var colName = _code.Escape(edmProperty);
string sql = string.Format(@"SELECT 字段说明=isnull(props.[value],'') FROM syscolumns cols inner join sysobjects objs on cols.id= objs.id and objs.xtype='U' and objs.name<>'dtproperties' left join sys.extended_properties props on cols.id=props.major_id and cols.colid=props.minor_id where objs.name='{0}' and cols.name='{1}'", tableName, colName);
string sqlcon = "Data Source=127.0.0.1;User ID=sa;Password=fz123456;Initial Catalog=STHXN";
object remark = new object();
using (System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(sqlcon))
{
conn.Open();
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand(sql, conn);
remark = cmd.ExecuteScalar();
}
return remark.ToString();
}
2,找到<#=codeStringGenerator.Property(edmProperty)#> 添加如下///注释中内容:
var simpleProperties = typeMapper.GetSimpleProperties(entity);
if (simpleProperties.Any())
{
foreach (var edmProperty in simpleProperties)
{
#>
/// <summary>
/// <#=codeStringGenerator.GetRemark(edmProperty)#>
/// </summary>
<#=codeStringGenerator.Property(edmProperty)#>
<#
}
}
3,生成->转换所有T4模板,即可在模型中查看到效果
namespace Data.Model
{
using System;
using System.Collections.Generic;
public partial class Customers
{
/// <summary>
/// 编号
/// </summary>
public int id { get; set; }
/// <summary>
/// 名字
/// </summary>
public string name { get; set; }
}
}