今天领导让我将 SQL Server 2022 的几十张表转成 C# 的 Class ,本想着可以到网上找个工具生成一下就行了,但是找了好久并没有发现有可以直接使用的工具。
各位 V 友有好的工具吗?感谢!

有啊,Entity Framework (Core)的工具啊,具体用法问 chatGPT 。

Scaffolding?

我是通过建立一个 GPT 来解决的

问 GPT 还得人工再核对一下才行,毕竟担心生成错了。

这种现有数据库后有类叫 Database First ,你可以通过这个关键字找到官方文档。比如: learn.microsoft.com/en-us/ef/ef6/modeling/designer/workflows/database-first

使用 Entity Framework (EDMX) 创建数据模型或自己写下代码生成器

类似这种吧。 blog.csdn.net/qq_61325957/article/details/130363606

你自己写一下,能有多大个事儿,不行你用 AI 给你写一个

EF Core 的 learn.microsoft.com/en-us/ef/core/managing-schemas/scaffolding/?tabs=dotnet-core-cli

EZDML 可以生成 github.com/huzgd/ezdml

大家推荐的都好复杂,有没有一个图形化的界面,直接连接数据库,然后我批量选择几个表一次生成?

SqlSugar ,Db First 实体生成 www.donet5.com/Home/Doc?typeId=1207

这种经典老番就别和别人争论了,都是成熟的不能再成熟的东西,你非要用 GUI 就去买 Rider,那个带了 EF Core 工具的 GUI 插件

VS 扩展 EF Core Power Tools marketplace.visualstudio.com/items?itemName=ErikEJ.EFCorePowerTools

dbfirst

其实这个就挺好用的啊... 还支持多种数据库, 还能自定义生成. www.cnblogs.com/flashbar/archive/2012/01/04/MyGenerator.html

感谢,似乎这个最适合我,我下载试试看。

为什么平时 dotnet 板块看着冷冷清清,问个问题就都冒出来了

经过测试,整体上没什么问题,但它把我的 [datetime not null] 生成为 [DateTime?] 了,看来我还是要人工核对一下。

曲线救国一下也可以数据库导出建表 sql 脚本,拿着建表脚本生成实体结构

#4是 GPT 不是 ChatGPT 。我自己就搞了一个因为我的 ORM 是自己封装过一次用来屏蔽底层实现的,直接把创建表的 Sql 给它它就能按我的要求生成。目前相当稳定,没什么问题:有的问题就是我有时候让它省去字段名符合 C#的命名规范,有的它会继续加上:但这并不影响。

试试这个 www.devart.com/entitydeveloper/记得还有叫 codesmith 的代码生成工具

自己写一个上大分!很简单的

自己本地搭建的 GPT ?

不是,plus 会员。现阶段 ai 就一个选择:openai

可以改模板的.

自己写一个,读取表结构,用模板生成

找个实习生,半天就给你搞完了。

你扯吧 十多个表 就按平均每张表 15 个字段算, 半天你也搞不完好吧...

Entity Framework 神器

19 张表 ,每张表 15 个字段, 每个字段 20 个字母。191520=5700 字母。 半天 4 小时算 46060=14400 秒。14400/5700=2.5 秒/字母。

我勒个去, 你每个字段都是 Name 对吧? 20 个字母顶多写完 public string Name. 后面还有 { get; set; } 呢? 然后还要打个回车呢?而且你定义成员都不写注释的是吧? 来回切输入法打中文英文或者来回切换数据库工具跟 IDE 在其之间复制粘贴的时间你算没算一下? 就算不写注释, 只把 get;set; 写完, 每个字段都是四个字母, 19 张表 也有 8550 字了. 你打字速度挺快啊.

get, set string 这些不都是自动补全嘛, 注释直接头上一个段 sql 的建表语句,表里的字段说明直接就在里面了。你就拷贝下字段名。 要什么切换中英文。