EF架构~为EF DbContext生成的实体添加注释(T5模板应用)

简介:

相关文章系列

第八回  EF架构~将数据库注释添加导入到模型实体类中

第二十一回  EF架构~为EF DbContext生成的实体添加注释(T4模板应用)

第二十二回  EF架构~为EF DbContext生成的实体添加注释(T5模板应用

嗨,没法说,EF4的TT模版加上注释后,升级到EF5的TT模版后,注释就不通用了,所以,还得再研究一下,然后把操作方法再分享出来,没辙的微软!

T4模版可能有些凌乱,这在T5模版里有了不错的改进,但我希望解决的问题在T5里并没有得到解决,那就是TT类文件自动得到EDMX模型的注释问题,可能大微的开发人员不需要实体注释吧,嗨!

1 先加上类注释

找到这行代码WriteHeader(codeStringGenerator, fileManager);

在它下面加上我们的代码:

string summary=string.Empty;
foreach (var entity in typeMapper.GetItemsToGenerate<EntityType>(itemCollection))
{
    fileManager.StartNewFile(entity.Name + ".cs");
    BeginNamespace(code);
    if(entity.Documentation !=null && entity.Documentation.Summary!=null)
       summary=entity.Documentation.Summary;
     else
        summary=entity.Name;
#>
<#=codeStringGenerator.UsingDirectives(inHeader: false)#>
/// <summary>
/// <#=summary#>
/// </summary>
<#=codeStringGenerator.EntityClassOpening(entity)#>

同时保存TT模版文件,这时类的注释就已经加上了

2 再加上属性注释

找到这行代码   foreach (var edmProperty in simpleProperties)

在它下面加上我们的代码

  foreach (var edmProperty in simpleProperties)
         {
         if (edmProperty.Documentation != null && edmProperty.Documentation.Summary != null)
          {
           summary=edmProperty.Documentation.Summary;
          }
         else
          {
           summary="";
          }
#>
    /// <summary>
    /// <#=summary#>
    /// </summary>
    <#=codeStringGenerator.Property(edmProperty)#>

同时保存TT模版,这时我们的类属性注释就加好了

事实上,这TT模版加注释的原理就是通过读EDMX文件(是个XML文件)的相关注释内容来为POCO实体类加注释的,如果EDMX里没有注释,这个数据库注释也无法加上来,相关数据库与EDMX注释同步文章,可以看这篇文章EF架构~将数据库注释添加导入到模型实体类中

本文转自博客园张占岭(仓储大叔)的博客,原文链接:EF架构~为EF DbContext生成的实体添加注释(T5模板应用),如需转载请自行联系原博主。

目录
相关文章
|
16天前
|
机器学习/深度学习 API 语音技术
|
1月前
|
Cloud Native Devops 持续交付
构建未来:云原生架构在现代企业中的应用与挑战
【2月更文挑战第31天】 随着数字化转型的加速,云原生技术已经成为推动企业IT架构现代化的关键力量。本文深入探讨了云原生架构的核心组件、实施策略以及面临的主要挑战。通过分析容器化、微服务、DevOps和持续集成/持续部署(CI/CD)等关键技术,揭示了如何利用这些技术实现敏捷性、可扩展性和弹性。同时,文章还讨论了企业在采纳云原生实践中可能遇到的安全性、复杂性和文化适应性问题,并提供了解决这些问题的策略和建议。
|
2天前
|
JSON API 数据库
后端架构设计与优化:打造高性能应用后端
后端架构设计与优化:打造高性能应用后端
10 2
|
11天前
|
人工智能 Serverless 数据处理
利用阿里云函数计算实现 Serverless 架构的应用
阿里云函数计算是事件驱动的Serverless服务,免服务器管理,自动扩展资源。它降低了基础设施成本,提高了开发效率,支持Web应用、数据处理、AI和定时任务等多种场景。通过实例展示了如何用Python实现图片压缩应用,通过OSS触发函数自动执行。阿里云函数计算在云计算时代助力企业实现快速迭代和高效运营。
46 0
|
14天前
|
运维 监控 自动驾驶
构建可扩展的应用程序:Apollo与微服务架构的完美结合
构建可扩展的应用程序:Apollo与微服务架构的完美结合
33 10
|
16天前
|
机器学习/深度学习 PyTorch API
|
16天前
|
机器学习/深度学习 语音技术 算法框架/工具
|
17天前
|
运维 Cloud Native 持续交付
构建未来:云原生架构在现代企业中的应用与挑战
【4月更文挑战第10天】 随着数字化转型的不断深入,企业对信息技术基础设施的要求日益提高。云原生架构作为一种新兴的设计理念和技术集合,以其灵活性、可扩展性和容错性,正在成为推动企业技术革新的关键力量。本文将探讨云原生技术的核心组件、实施策略以及面临的主要挑战,并分析如何通过采纳云原生架构来优化业务流程和提升服务效率。
|
26天前
|
移动开发 前端开发 数据管理
构建高效Android应用:采用MVVM架构与LiveData的全面指南
在移动开发领域,构建一个既快速又可靠的应用对于开发者来说至关重要。随着Android Jetpack组件的推出,MVVM(Model-View-ViewModel)架构和LiveData已成为实现响应式、可测试且易于维护应用的首选解决方案。本文将深入探讨如何在Android应用中实施MVVM模式,以及如何利用LiveData来优化UI组件的数据更新流程,确保用户界面与业务逻辑之间的高度解耦和流畅交互。
18 4
|
1月前
|
Cloud Native 安全 Devops
构建未来:云原生架构在现代企业中的应用与挑战
【2月更文挑战第30天】 随着数字化转型的深入,企业正迅速采纳云原生技术以适应不断变化的市场环境。本文探讨了云原生架构的关键组成部分,包括容器化、微服务、持续集成/持续部署(CI/CD)和DevOps实践,并分析了它们如何促进企业的敏捷性和可扩展性。同时,文章也识别了企业在采用云原生技术时面临的安全、文化和技术挑战,并提出了相应的解决策略,以帮助企业在云时代保持竞争力。