当开发者使用 CodeFirst 开发模式,编写了大量的实体类,在代码中编写了完整的类型注释和属性注释,并自动生成数据库后,往往需要把实体类型和实体属性上的注释同时生成到对应的数据库表及字段上。这样,即方便在查看数据库时能清晰地看到每一个表及字段的含义,也方便使用一些第三方的工具(如 PowerDesigner 等)为数据库生成较为全面的文档。

使用方法


  1. 在为数据库生成注释之前,需要保证数据库已经全部生成成功(即和实体保持一致)。否则更新字段的注释时,可能因为字段不存在而导致执行失败。

  2. 需要在编译领域实体所在的程序集时,同时生成对应的 XML 注释文件。否则,程序会找不到需要编写的注释。

    打开方法:在领域实体项目上点击右键->属性->编译->输出->在“XML document file”前打勾。

  3. 打开后,重新编译整个解决方案。

  4. 编写以下代码来生成数据库的注释。(只需要执行一次即可)

using (var context = new RafyDbMigrationContext(JXCEntityRepositoryDataProvider.DbSettingName))
{context.RefreshComments();
}

注意

目前为数据库生成注释的功能,只支持 Oracle 和 SqlServer 两个数据库。

PS:该文已经纳入《 Rafy 用户手册》中。

转载于:https://www.cnblogs.com/zgynhqf/p/4925168.html

Rafy 框架 - 为数据库生成注释相关推荐

  1. PowerDesigner生成注释以及对应数据库的sql语句

    在powerBuilder中新建一个Physical Data Model,在其中新建一个用户表,信息如下图所示: 此时的SQL语句可从其中的Preview视图中得到,如下图所示: 这个时候生成的sq ...

  2. FastAPI框架,数据库迁移生成及增删改查

    #渲染模板 from fastapi import FastAPI,Request from fastapi.responses import JSONResponse,HTMLResponse,Fi ...

  3. .NET Core实战项目之CMS 第十一章 开发篇-数据库生成及实体代码生成器开发

    上篇给大家从零开始搭建了一个我们的ASP.NET Core CMS系统的开发框架,具体为什么那样设计我也已经在第十篇文章中进行了说明.不过文章发布后很多人都说了这样的分层不是很合理,什么数据库实体应该 ...

  4. Rafy 框架 - 使用 SqlTree 查询

    本文介绍如何使用 Rafy 框架中的 Sql Tree 查询: 除了开发者常用的 Linq 查询,Rafy 框架还提供了 Sql 语法树的方式来进行查询. 这种查询方式下,开发者不需要直接编写真正的 ...

  5. dao和mysql映射_hibernate通过数据库生成实体类,映射文件和DAO(实用)

    hibernate通过数据库生成实体类,映射文件和DAO(实用) (2011-04-06 17:22:32) 标签: 杂谈 上次谈到利用MyEclipse从数据库反向生成实体类之JPA方式,这次我们来 ...

  6. Rafy 框架 - 流水号插件

    Rafy 框架又添新成员:流水号插件.本文将解释 Rafy 框架中的流水插件的场景.使用方法. 场景 在开发各类数据库应用系统时,往往需要生成从一开始的流水号,有时还需要按月或者按日进行独立生成,如下 ...

  7. ssh框架实现数据库_自顶向下介绍SSH及其如何实现安全的数据共享

    ssh框架实现数据库 by Sam Ollason 通过萨姆·奥拉森(Sam Ollason) This article will take a high-level and top-down app ...

  8. Rafy 框架 - 大批量导入实体

    某些场景下,开发者希望能够大批量地把实体的数据导入到数据库中.虽然使用实体仓库保存实体列表非常方便,但是其内部实现机制是一条一条的保存到数据库,当实体的个数较多时,效率就会很低.所以 Rafy 设计了 ...

  9. Springboot使用JPA框架对数据库实现增删改查(附详细代码)

    前言 1.本文将详细阐述如何使用JPA框架对数据库实现增删改查操作,业务中比较常见的应用场景几乎在这里都能看到,并且有详尽的代码可供直观演示,其中遇到的坑也进行了实时标注. 2.JPA的环境配置在前面 ...

最新文章

  1. 第三次组织架构变动背后,腾讯AI走向何方?
  2. Python——cmd调用(os.system阻塞处理)(多条命令执行)
  3. DNS_ARP_DHCP协议
  4. oracle学习之三--多表查询
  5. C 数据结构之十大排序
  6. 【转载】博客园编辑数学公式的方法
  7. 【CSU - 1980 】不堪重负的树(树上区间dp)
  8. css如何做玻璃效果_3种常见的断桥铝门窗玻璃,它们的隔音降噪效果如何?
  9. Jenkins 使用slave管理进行持续集成测试说明
  10. [Linux学习笔记] Linux常用命令 - 文件搜索命令
  11. 网站文件系统发展分布式文件系统fastDFS
  12. 安卓移动办公软件_安卓免费办公软件套装 速度快功能强大 WPS Office 12.6.4 解锁高级版特权...
  13. 算法图解第一章笔记与习题(算法简介)
  14. 计算机字符编码从0/1到UTF-8
  15. 创建线程-学到了4种方法
  16. Docker Secrets
  17. 高通与NVIDIA在物联网芯片交锋,争相引入AI
  18. 【C++】栈~~(很详细哦)
  19. php 查询mysql数据库 打印_php 查询mysql数据库 打印
  20. 2021级新生程序设计班级天梯赛:1-6 《从你的全世界路过》

热门文章

  1. Wine 4.4 发布,Windows 应用的兼容层
  2. perf-perf stat用户层代码分析
  3. http缓存协议详解
  4. 按照鬼哥学so变化,四,第一章的例子
  5. 巴士电台开放接口API
  6. 02 | 纵览全局:把握 Netty 整体架构脉络
  7. 015、JVM实战总结:大厂面试题:什么情况下JVM内存中的一个对象会被垃圾回收?
  8. apk部分手机安装失败_3关于Apk安装失败问题的解决方法
  9. C程序设计语言现代方法01:C语言概述
  10. matlab切割肿瘤算法,ML之RF:基于Matlab利用RF算法实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性...