日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

ASP.NET?Core基于現有數據庫創建EF模型_實用技巧

作者:暗斷腸 ? 更新時間: 2022-06-09 編程語言

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”單擊“添加”

原文鏈接:https://www.cnblogs.com/wzk153/p/11380930.html

欄目分類
最近更新