DbTool 一个支持 DbFirst、ModelFirst 和 CodeFirst 的数据库工具。
这是一个针对 SqlServer
和 C#
的数据库的小工具,可以利用这个小工具生成数据库表对应的 Model,并且会判断数据表列是否可以为空,可以为空的情况下会使用可空的数据类型,如
int? , DateTime? ,如果数据库中有列描述信息,也会生成在属性名称上添加列描述的注释,支持导出多个表;可以导出到Excel,可以根据Excel字段文档生成Sql,数据库表误删除又没有备份的时候就很有帮助了,而且支持反向的根据生成的Model去生成创建数据库表的Sql。
DbTool.Core
DbTool 用于扩展的接口定义,帮助类DbTool.DbProvider.MySql
DbTool 对于 MySql 的支持DbTool.DbProvider.SqlServer
DbTool 对于 SqlServer 的支持DbTool.DbProvider.PostgreSql
DbTool 对于 PostgreSql 的支持IDbProvider
,IDbDocExporter
,将数据库表信息导出到文档IDbDocImporter
从数据库文档中获取数据库表信息IModelCodeGenerator
,根据数据库表信息生成代码 ModelIModelCodeExtractor
IModelNameConverter
,也可以继承 DefaultModelNameConverter
,改写某一个实现新建一个类库项目,引用 DbTool.Core
,并实现相应的接口,实现对应的逻辑,将生成的 dll
放在 DbTool
的 plugins
目录下即可
举个例子,自定义一个 Markdown Exporter 插件
新建一个项目 DbTool.DbDocExporter.Markdown
,并引用 DbTool.Core
添加 MarkdownDbDocExporter
类并实现 IDbDocExporter
接口
dotnet build
生成 dll,并将生成的 dll 放在 plugins
目录下