NetCore-EFCore-DBfirst-同步数据库生成Model

1.首先,说一下EFCore使用DBfist的基础语法 。

dotnet ef dbcontext scaffold "Server=数据库连接地址;Database=数据库名

称;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer 后续参数......

2.语法中的后续参数说明如下表。

 

简写 指令 说明
-d --data-annotations 该参数用于将模型配置,如果省略此选项,则使用仅 fluent API。
-c --context 该参数指定DbContext类生成的名称
  --context-dir 该参数指定DbContext中的类文件, 路径是相对于项目目录,命名空间派生自文件夹名称
-f --force 该参数用于覆盖现有文件
-o --output-dir 该参数指定要将实体类文件放入的目录, 路径是相对于项目目录
  --schema ... 该参数指定要生成的实体类型的表架构。 若要指定多个架构,请重复--schema为每个。 如果省略此选项,则包括所有架构
-t --table 该参数指定要生成的实体类型的表。 若要指定多个表,请重复-t或--table为每个。 如果省略此选项,则包括所有表。
  --use-database-names 使用表和列名称与数据库中显示的名称完全一样,请使用表和列的名称。 如果省略了此选项,数据库名称将被更改为更接近于C#名称样式约定。

 

3.有些人可能在参数中找不到生成视图(View)的指令,我在开始也很困惑,后来找到了这个问题的解决方法,需要安装aspnet-codegenerator来处理。

dotnet tool install -g dotnet-aspnet-codegenerator  //安装aspnet-codegenerator

dotnet aspnet-codegenerator view --dataContext MyDbContext --model  //生成视图对应的model

以上部分摘自官方文档,详情请参阅传送门:https://docs.microsoft.com/zh-cn/ef/core/miscellaneous/cli/powershell

 

你可能感兴趣的:(NetCore)