网站建设网上售票系统,学网站建设培训机构,免费只做网站,两个电脑的wordpress一个支持 CodeFirst/DbFirst/ModelFirst 的数据库小工具IntroDbTool 是一个支持 CodeFirst/DbFirst/ModelFirst 的数据库小工具#xff0c;原本是基于 dotnet framework WinForm 实现的#xff0c;在 1.1.0 版本更新中使用 dotnet core 3.1 基于 WPF 重写了#xff0c;并实现… 一个支持 CodeFirst/DbFirst/ModelFirst 的数据库小工具IntroDbTool 是一个支持 CodeFirst/DbFirst/ModelFirst 的数据库小工具原本是基于 dotnet framework WinForm 实现的在 1.1.0 版本更新中使用 dotnet core 3.1 基于 WPF 重写了并实现了一个简单的基于插件模式开发模式并引入了多语言的基础支持。数据库当前支持 SqlServer 和 MySql可以自己扩展其他类型数据库。可以利用这个小工具生成数据库表对应的 Model并且会判断数据表列是否可以为空可以为空的情况下会使用可空的数据类型如 int? , DateTime? 如果数据库中有列描述信息也会生成在属性名称上添加列描述的注释支持导出多个表可以导出到Excel可以根据Excel字段文档生成Sql数据库表误删除又没有备份的时候就很有帮助了而且支持反向的根据生成的Model去生成创建数据库表的Sql供参考。基本功能功能一览功能说明DbFirstModel 设置选项说明model的命名空间生成的 model 所在的命名空间默认为 Models不可为空为空则使用默认值Modelsmodel前缀表名的基础上加的前缀默认为空model后缀表名的基础上加的后缀默认为空生成私有字段默认为 false如果为 false则使用自动属性的代码风格反之使用传统 get;set; 风格代码如生成 Description Attribute默认值为 true如果为 true则会在属性字段上生成一个 [Description]的Attribute如果为false则不生成效果如下csharp/// summary用户名/summary[Description(用户名)]publicstringUserName{get;set;}生成 Model 名称的规则说明生成的Model的名称由前缀和表名称及后缀拼接而成如果表名以 tab或 tab_或 tbl或 tbl_这些开头则会先把这些移除掉再拼接可以通过自定义插件扩展设置数据库连接字符串并连接数据库选择要导出到 Excel 的数据库表导出到 Excel导出数据库表到ExcelModelFirst可以手动填写信息或者先选择 Excel 导入数据库表信息生成创建数据库表的 Sql 语句不会自动在数据库里创建表根据生成的 Sql 语句再创建表CodeFirst根据已有的 Model 生成创建表的 sql 字段注释会从属性的 Description Attribute 中获取根据需要设置是否生成数据库描述 sql左侧生成表字段信息右侧生成创建表的sql生成的 Sql 仅供参考请自行根据需要调整数据类型以及字段长度Settings修改默认数据库连接字符串修改默认数据库类型修改默认语言1.1.0 版本需要重启应用插件扩展Packages目前的 packagesDbTool.Core DbTool 用于扩展的接口定义帮助类DbTool.DbProvider.MySql DbTool 对于 MySql 的支持DbTool.DbProvider.SqlServer DbTool 对于 SqlServer 的支持扩展方式扩展数据库支持实现 IDbProvider扩展导出方式实现 IDbDocExporter当前支持导出 Excel扩展 Model 代码生成方式实现 IModelCodeGenerator根据数据库表信息生成 Model扩展 Model 名称表名称转化实现 IModelNameConverter也可以继承 DefaultModelNameConverter改写某一个实现自定义扩展使用方式新建一个类库项目,引用 DbTool.Core并实现相应的接口实现对应的逻辑将生成的 dll 放在 DbTool 的 plugins 目录下即可举个例子自定义一个 Markdown Exporter 插件新建一个项目 DbTool.DbDocExporter.Markdown并引用 DbTool.Core添加 MarkdownDbDocExporter 类并实现 IDbDocExporter 接口dotnet build 生成 dll并将生成的 dll 放在 plugins 目录下Referencehttps://github.com/WeihanLi/DbToolhttps://github.com/WeihanLi/DbTool/tree/packages