ASP.NET Core – 设置实体框架
ASP.NET Core – 设置实体框架
在本章中,我们将设置和配置我们的应用程序以保存和读取 SQL Server 数据库中的数据。
为了使用数据库,我们将使用实体框架,该框架经过重新编写以与新的 .NET 框架一起使用。如果您过去曾与 EF 合作过,您会看到许多熟悉的作品。
-
在此应用程序中,我们将使用 SQL Server LocalDB。如果您对 SQL Server 不满意,您可以使用任何您喜欢的数据库,例如本地数据库、远程数据库,只要您有在实例上创建新数据库的权限即可。
-
LocalDB 是专为开发人员优化的 SQL Server 特殊版本。
-
Visual Studio 2015 甚至它的社区版都会默认安装 LocalDB。
要检查 LocalDB,请转到Visual Studio 中的“视图”→“SQL Server 对象资源管理器”菜单选项。
如果您必须使用 SQL Server,这是一个很好的工具,因为它允许您探索数据库和浏览数据,甚至在数据库中创建数据。第一次打开它可能需要一点时间,但它应该会自动连接到 LocalDB。
安装实体框架
使用实体框架的第一步是从 NuGet 包管理器或通过直接编辑project.json文件来安装实体框架 NuGet 包。
现在让我们通过添加以下两个包来直接编辑 project.json 文件。
该EntityFramework.Commands包帮助我们像创建基于我们的C#实体类数据库架构与实体框架执行任务,这些任务都可以从一个命令行工具,其中的逻辑生活EntityFramework.Commands包内。
为了使用这个命令行工具,我们需要在 project.json 的命令部分添加一个额外的条目,如下面的屏幕截图所示。
我们刚刚称它为“ef”,它将映射到这个 EntityFramework.Commands 包。我们可以使用这个“ef”来访问 EntityFramework.Commands 中可用的一些逻辑。
下面是project.json文件的实现。
{ "version": "1.0.0-*", "compilationOptions": { "emitEntryPoint": true }, "dependencies": { "Microsoft.AspNet.Mvc": "6.0.0-rc1-final", "Microsoft.AspNet.Diagnostics": "1.0.0-rc1-final", "Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final", "Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final", "Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final", "EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final", "EntityFramework.Commands": "7.0.0-rc1-final" } "commands": { "web": "Microsoft.AspNet.Server.Kestrel" }, "frameworks": { "dnx451": { }, "dnxcore50": { } }, "exclude": [ "wwwroot", "node_modules" ], "publishExclude": [ "**.user", "**.vspscc" ] }