(18)ASP.NET Core 基于现有数据库创建EF模型(反向工程)
1.简介Entity Framework Core可通过数据库提供给应用程序的插件访问许多不同的数据库。我们可以通过使用Entity Framework Core构建执行基本数据访问的ASP.NET Core MVC应用程序,对现有数据库进行反向工程以便创建Entity Framework模型。 2.创建数据库我们可以通过Visual Studio创建一个数据库再进行演示,步骤如下: CREATE DATABASE [Blogging]; GO USE [Blogging]; GO CREATE TABLE [Blog] ( [BlogId] int NOT NULL IDENTITY,[Url] nvarchar(max) NOT NULL,CONSTRAINT [PK_Blog] PRIMARY KEY ([BlogId]) ); GO CREATE TABLE [Post] ( [PostId] int NOT NULL IDENTITY,[BlogId] int NOT NULL,[Content] nvarchar(max),[Title] nvarchar(max),CONSTRAINT [PK_Post] PRIMARY KEY ([PostId]),CONSTRAINT [FK_Post_Blog_BlogId] FOREIGN KEY ([BlogId]) REFERENCES [Blog] ([BlogId]) ON DELETE CASCADE ); GO INSERT INTO [Blog] (Url) VALUES (‘http://blogs.msdn.com/dotnet‘),(‘http://blogs.msdn.com/webdev‘),(‘http://blogs.msdn.com/visualstudio‘) GO ●点击Execute按钮或者敲击Ctrl+Shift+E执行T-SQL查询 创建数据库成功。 3.对模型实施反向工程3.1反向工程什么是反向工程?反向工程开始时会读取链接数据库的架构,它将读取有关表、列、约束和索引的信息。接下来,它使用的架构信息创建EF Core模型。使用表来创建实体类型;使用列来创建属性;外键用于创建关系。最后,从你的应用程序中搭建实体类型的类Fluent API和数据批注和重新创建相同的模型。 3.2基于现有数据库创建EF模型当我们在PowerShell运行以下命令从现有数据库创建模型时候,会提示如下错误: Scaffold-DbContext "Server=(localdb)mssqllocaldb;Database=Blogging;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models 关于程序包管理器不支持PowerShell 2.0版本问题,解决方法如下: ●打开https://www.microsoft.com/zh-CN/download/details.aspx?id=40855链接地址 ●选择Windows6.1-KB2819745-x64-MultiPkg.msu安装升级版本 现在我们再在PowerShell运行以下命令看看: 从现有数据库创建EF模型成功。 4.创建控制器和视图从现有数据库创建EF模型之后,我们可以通过创建控制器和视图增删改数据。可以通过以下步骤创建控制器跟视图:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – ASP.NET MVC Beta支持列表中的Model Binder
- 如何测试ASP.NET会员密码是否符合配置的复杂性要求?
- asp.net-mvc-3 – 使用Html.RadioButtonFor和Html.LabelFor
- asp.net-mvc – DatePicker编辑器模板
- WeihanLi.Npoi 1.11.0/1.12.0 Release Notes
- Azure Apps EasyAuth声称使用.NET Core
- asp.net-mvc – 如何使用Durandal.js,mvc3部分视图
- ASP.NET MVC 4自定义HTML Helpers文件夹位置
- asp.net-core – ASP.NET Core – Swashbuckle没有创建swag
- asp.net-mvc – 带有MVC Sitemap的Breadcrumb只显示一个级别
- 向ASP.NET Core迁移
- asp.net – <%#Eval(“State”)%>或<%#DataBi
- asp.net-mvc – CultureInfo:ASP.NET / MVC上的
- asp.net-mvc – 使用Automapper将字符串映射到枚
- asp.net-mvc-4 – 在区域中使用Url.RouteUrl()和
- asp.net – 使用WebHandler的HTTPHandler和IsReu
- ASP.NET身份验证 – 多个应用程序的一个登录系统
- asp.net – MySQL ::连接器/净欧元符号
- ASP.NET 根据汉字获取汉字拼音的首字母(含多音字
- 将“onclick”属性添加到asp.net下拉列表项