# 公共依赖 Install-Package Microsoft.EntityFrameworkCore.Tools # MySQL Install-Package Pomelo.EntityFrameworkCore.MySql Scaffold-DbContext "Server=.;Port=3306;Database=netnr;uid=root;pwd=123" Pomelo.EntityFrameworkCore.MySql -Force -UseDatabaseNames -DataAnnotations -NoPluralize -NoOnConfiguring -Context ContextBase #SQLServer Install-Package Microsoft.EntityFrameworkCore.SqlServer Scaffold-DbContext "Server=.;Database=netnr;uid=sa;pwd=123" Microsoft.EntityFrameworkCore.SqlServer #PostgreSQL Install-Package Npgsql.EntityFrameworkCore.PostgreSQL Scaffold-DbContext "Host=localhost;Database=netnr;Username=postgres;Password=123" Npgsql.EntityFrameworkCore.PostgreSQL # 参数 -Connection # 与数据库的连接字符串。对于 ASP.NET Core 2.x 项目,该值可以为 name = <连接字符串的名称> 。在这种情况下,名称来自为项目设置的配置源。这是一个位置参数,是必需的 -Provider # 要使用的提供者。通常,这是 NuGet 包的名称,例如:Microsoft.EntityFrameworkCore.SqlServer。这是一个位置参数,是必需的。 -OutputDir # 放置文件的目录。路径是相对于项目目录的。 -ContextDir # 放置 DbContext 文件的目录。路径是相对于项目目录的。 -Namespace # 用于所有生成的类的名称空间。默认为从根名称空间和输出目录生成。在 EF Core 5.0 中添加。 -ContextNamespace # 用于生成的 DbContext 类的名称空间。注意:覆盖 -Namespace。在 EF Core 5.0 中添加。 -Context # 要生成的 DbContext 类的名称。 -Schemas # 要为其生成实体类型的表的模式。如果省略此参数,则包括所有架构。 -Tables # 要为其生成实体类型的表。如果省略此参数,则包括所有表。 -DataAnnotations # 使用属性(如果可能)配置模型。如果省略此参数,则仅使用流畅的 API。 -UseDatabaseNames # 使用与数据库中完全相同的表和列名称。如果省略此参数,则更改数据库名称以使其更符合 C#名称样式约定。 -Force # 覆盖现有文件。 -NoOnConfiguring # 不生成 DbContext.OnConfiguring。在 EF Core 5.0 中添加。 -NoPluralize # 不要使用复数。在 EF Core 5.0 中添加。 # help https://docs.microsoft.com/en-us/ef/core/cli/powershell https://docs.microsoft.com/zh-cn/ef/core/cli/dotnet http://www.npgsql.org/efcore/index.html