zoukankan      html  css  js  c++  java
  • (18)ASP.NET Core2.2 基于现有数据库创建EF模型(反向工程)

    1.简介

    Entity Framework Core可通过数据库提供给应用程序的插件访问许多不同的数据库。我们可以通过使用Entity Framework Core构建执行基本数据访问的ASP.NET Core MVC应用程序,对现有数据库进行反向工程以便创建Entity Framework模型。

    2.创建数据库

    我们可以通过Visual Studio创建一个数据库再进行演示,步骤如下:
    ●打开Visual Studio开发工具
    ●“工具”>“连接到数据库”
    ●选择“Microsoft SQL Server”(因为我本机是用MSS),然后单击“确定”
    ●输入“(localdb)mssqllocaldb”或者“.”作为服务器名称
    ●选择或输入“master”作为数据库名称,然后单击“确定”
    ●master数据库现在显示在“服务器资源管理器”的“数据连接”中
    ●右键单击“服务器资源管理器”中的数据库,然后选择“新建查询”
    ●将下列脚本复制到查询编辑器中:

    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模型之后,我们可以通过创建控制器和视图增删改数据。可以通过以下步骤创建控制器跟视图:
    ●在“解决方案资源管理器”中,右键单击“控制器”文件夹,然后选择“添加”>“控制器”
    ●选择“视图使用 Entity Framework的MVC控制器”,然后单击“添加”
    ●将“模型类”设置为“Blog”,将“数据上下文类”设置为“BloggingContext”单击“添加”


    参考文献:
    通过现有数据库在ASP.NET Core上开始使用EF Core
    反向工程

  • 相关阅读:
    AngularJS定时器任务
    ssh常用
    HTTPClient模块的HttpGet和HttpPost
    eclipse下设置tomcat,修改Java代码不必重启tomcat
    【转】调试Release发布版程序的Crash错误
    C/C++ 函数压栈方式
    PHP 安全三板斧:过滤、验证和转义之转义篇 & Blade模板引擎避免XSS攻击原理探究
    让 MySQL 支持 emoji 存储
    Laravel 5.1 中创建自定义 Artisan 控制台命令实例教程
    常见的Web实时消息交互方式和SignalR
  • 原文地址:https://www.cnblogs.com/wzk153/p/11380930.html
Copyright © 2011-2022 走看看