.net core2.0 使用数据库创建EF模型(db first)
引用来自:官方资料 参考来自
打开程序包管理器控制台
输入 Install-Package Microsoft.EntityFrameworkCore.SqlServer 回车(用的是SqlServer数据库)
等待安装完成
继续输入 Install-Package Microsoft.EntityFrameworkCore.Tools 回车
等上边完成后接着输入 Install-Package Microsoft.EntityFrameworkCore.SqlServer.Design 回车
需要导入的包已经引用完成
输入命令 Scaffold-DbContext "Server=.;Database=Alumnus;Integrated Security=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models 回车
嗯?报错啦啦~~~
经过我不懈的努力翻官方文档,终于~~还是没找到。然后换了个地方创建项目,路径全部是英文的然后 。 。tmd就可以了 , 中文路径无法识别导致的
输入命令 Scaffold-DbContext "Server=.;Database=Alumnus;Integrated Security=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models 回车
搞定!
参数 描述
-连接<字符串 > 数据库的连接字符串。 对于 ASP.NET Core 2.x 项目,值可以是名称 =<的连接字符串名称 > 。 在这种情况下名称来自于为项目设置的配置源。 这是位置参数,是必需的。
-Provider 要使用的提供程序。 通常这是 NuGet 包的名称为例: Microsoft.EntityFrameworkCore.SqlServer。 这是位置参数,是必需的。
-OutputDir 要将文件放入的目录。 路径是相对于项目目录。
-ContextDir 要放置的目录DbContext文件中。 路径是相对于项目目录。
-Context 名称DbContext类生成。
-Schemas <String[]> 要生成的实体类型的表架构。 如果省略此参数,则包括所有架构。
-Tables <String[]> 要生成的实体类型的表。 如果省略此参数,则包括所有表。
-DataAnnotations 特性用于将模型配置 (如果可能)。 如果省略此参数,则使用仅 fluent API。
-UseDatabaseNames 在数据库中显示的完全相同,请使用表和列的名称。 如果省略此参数,则会更改数据库名称,使其更紧密地符合 C# 名称样式约定。
-Force 覆盖现有文件。