解决EF没有生成字段和表说明

找了很多资料,终于找到一篇真正能解决ef生成字段说明,注释的文章,收藏不了,于是转载

本文章为转载,原文地址

项目中使用了EF框架,使用的是Database-First方式,因为数据库已经存在,所以采用Database-First方式,ef生成实体类的时候,发现微软没有自动生成表字段和表说明,在网上找了些资料,由于都不太全,倒腾了近2个小时,所以根据网上的帖子为基础,写得更详细一点,让初学者更容易明白和少走弯路。网上也有一些自动生成的软件,可以自动生成,但是更新数据库需要重新生成,有点麻烦,所有根据T4模板解决

第一步:

下载GetSummery.ttinclude文件,点击下载,GetSummery.ttinclude是模板文件,为了实现EF框架添加数据库自动生成实体注释。

第二步:

把GetSummery.ttinclude文件放到Model1.edmx同一级目录,当然也可以放到其他路径,为了方便放到同一级目录。

第三步:打开GetSummery.ttinclude文件,修改GetSummery.ttinclude连接数据库的字符串改为"ConnStr",prioviderName属性必须要有哦。

第四步:打开EF项目文件所在的tt文件

第五步:在tt头部添加 <#@ include file="GetSummery.ttinclude" #>

第六步:加载自定义TT文件用来获取数据库表备注和字段备注说明

在TT文件里搜索:<#=codeStringGenerator.UsingDirectives(inHeader: false)#>

把代码添加<#=codeStringGenerator.UsingDirectives(inHeader: false)#>到下面 

/// <summary>
/// <#= getTableSummery(code.Escape(entity)) #>
/// </summary>

如图所示:

第七步:第二次搜索:<#=codeStringGenerator.Property(edmProperty)#>, 在它上方插入代码:

/// <summary>
/// <#= getColumnSummery(code.Escape(entity),code.Escape(edmProperty)) #>
/// </summary>

如图所示:

第八步:保存TT文件,它会自动更新数据库里的各个实体

效果如图:

操作完毕!

 

猜你喜欢

转载自www.cnblogs.com/CoderLinkf/p/8922110.html
今日推荐