Scaffold DbContext:Undercores在从.NetCore中的postgres数据库生成上下文时消除



我使用的是最新的EFCore版本,Postgres数据库使用DB First方法。当从现有Postgres数据库生成Dbcontext时,它会从表名和列名中删除下划线('_'(。

数据库表结构

生成的DbContext模型结构

我正在使用以下命令生成DbContext:

Scaffold-DbContext "Server=localhost;Port=5432;User Id=postgres;Password=mypassword;Database=SAMPLE_db;" Npgsql.EntityFrameworkCore.PostgreSQL -o DbModels -Schemas "local_dev"

正如Ivan Stove上面提到的,使用dbcontext scaffold--use-database-names参数。这将从表名和字段中删除下划线之类的内容。

下面是一个使用终端的例子:

dotnet ef dbcontext scaffold "server=*SQL Server name*;user=*user name*;password=*password*;database=*database name*" Microsoft.EntityFrameworkCore.SqlServer -o Models -t *table name 1* -t *table name 2* -t *table name x* -f **--use-database-names**

注:

  • -o Models:解决方案中要写入模型文件的文件夹。它必须已经存在。
  • -t Individual table:这很方便,因为您只希望表的子集生成模型。只需对每张表重复-t

相关内容

  • 没有找到相关文章

最新更新