Entity Framework Core(EF Core) 反向工程:在 Blazor 项目中基于 数据库 自动生成 实体类型 和 DbContext
使用程序包管理器控制台(PMC)及Scaffold-DbContext命令在Blazor项目中基于数据库自动生成实体类型和DbContext。
一、使用 程序包管理器控制台 (PMC) 及 Scaffold-DbContext 命令

二、官网链接:反向工程 - EF Core | Microsoft Learn
三、需要先使用 NuGet 包管理器安装 Microsoft.EntityFrameworkCore.Design
四、基本命令格式
1. 基本格式
Scaffold-DbContext '数据库的连接字符串' EFCore数据库提供程序
2. 示例A
Scaffold-DbContext 'Server=(localdb)\\mssqllocaldb;Database=databaseName;Trusted_Connection=True;MultipleActiveResultSets=true' Microsoft.EntityFrameworkCore.SqlServer
3. 示例B
Scaffold-DbContext 'Server=localhost;Database=kyglxt;Trusted_Connection=True;MultipleActiveResultSets=true;TrustServerCertificate=True;User=sa;Password=123456' Microsoft.EntityFrameworkCore.SqlServer -NoOnConfiguring -UseDatabaseNames -DataAnnotations -OutputDir KyglxtData\\Entity -ContextDir KyglxtData
五、可选参数
-OutputDir
指定在其中为类搭建基架的目录
-ContextDir
将 DbContext 类搭建到与实体类型类不同的目录中
-NoOnConfiguring
禁止创建包含连接字符串的 OnConfiguring 方法
-UseDatabaseNames
尽可能保留原始数据库名称。 无效的 .NET 标识符仍将被修正,而合成名称(如导航属性)仍将符合 .NET 命名约定。
-DataAnnotations
使用映射属性,也称为 注释、注解、标注
-Schemas
指定将为其生成实体类型的表和视图的架构。 如果省略此参数,则包含所有架构。
-Tables
指定了将为其生成实体类型的表和视图。 可以使用 schema.table 或 schema.view 格式包含特定架构中的表或视图。 如果省略此选项,则包含所有表和视图。
-Context
指定 DbContext 名称。默认情况下,已搭建基架的 DbContext 类名将是后缀为 Context 的数据库名称。
-Namespace
默认情况下,命名空间将是根命名空间加上项目根目录下任何子目录的名称。
-ContextNamespace
指定 DbContext 类的命名空间。
-Force
强制覆盖现有文件。默认情况下,EF 命令不会覆盖任何现有代码,以防止意外丢失代码。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)