為此,ORM(對象關系映射)應運而生。Entity Framework Core(EF Core) 作為 .NET 平臺上成熟的 ORM 框架,能夠將數據庫表映射成 C# 對象,簡化數據訪問與操作。本文將以 .NET 8 為示例,帶你從零搭建 EF Core 與 SQL Server 的基礎配置,并執行首次遷移,幫助你快速入門 EF Core。


一、環境與前置準備

  1. .NET 8 項目

  2. VS Code 與 NuGet Gallery 插件

  1. 所需 NuGet 包

    dotnet add package Microsoft.EntityFrameworkCore.SqlServer
    dotnet add package Microsoft.EntityFrameworkCore.Tools
    dotnet add package Microsoft.EntityFrameworkCore.Design

    > 提示: 如果使用 .NET 7,將 SqlServer 包版本對齊為 EF Core 7.x。


二、創建 ApplicationDbContext

在項目根目錄下:

  1. 新建文件夾 Data

  2. Data 中新增 ApplicationDbContext.cs,內容如下:

   using Microsoft.EntityFrameworkCore;

   namespace MyEfCoreApp.Data
   {
       public class ApplicationDbContext : DbContext
       {
           public ApplicationDbContext(DbContextOptions < ApplicationDbContext > options)
               : base(options)
           {
           }

           // 在此聲明要映射的表
           public DbSet < Stock > Stocks { get; set; }
           public DbSet < Comment > Comments { get; set; }
       }
   }
  1. 同目錄下定義實體類 StockComment,例如:

    public class Stock
    {
       public int Id { get; set; }
       public string Symbol { get; set; }
       public decimal Price { get; set; }
    }
    
    public class Comment
    {
       public int Id { get; set; }
       public int StockId { get; set; }
       public string Content { get; set; }
    }


三、在 Program.cs 中注冊 DbContext

打開 Program.cs,在調用 builder.Build() 之前,添加以下代碼以注冊 EF Core DbContext:

using MyEfCoreApp.Data;
using Microsoft.EntityFrameworkCore;

var builder = WebApplication.CreateBuilder(args);

// 從 appsettings.json 讀取名為 "DefaultConnection" 的連接字符串
builder.Services.AddDbContext < ApplicationDbContext > (options = >
    options.UseSqlServer(
        builder.Configuration.GetConnectionString("DefaultConnection")
    )
);

var app = builder.Build();
// … 其他中間件或路由配置
app.Run();

> 注意: 一定要保證 AddDbContext 調用在 builder.Build() 之前,否則無法正確注入。


四、SQL Server 數據庫配置

  1. 在 SQL Server Management Studio(SSMS)中新建數據庫

  1. appsettings.json 中添加連接字符串

    {
     "ConnectionStrings": {
       "DefaultConnection": "Server=YOUR_DESKTOP_NAME;Database=FinShark;Trusted_Connection=True;TrustServerCertificate=True;Encrypt=False;"
     },
     // … 其他配置
    }


五、執行 EF Core 遷移

EF Core 遷移(Migrations)用于生成建庫腳本并更新數據庫結構。

  1. 添加首次遷移

    dotnet ef migrations add Init
  2. 更新數據庫

    dotnet ef database update
  3. 驗證結果


小結與下一步

至此,你已完成以下工作:

接下來,你可以基于此基礎實現對 StocksComments 的增刪改查操作,并深入了解 Deferred ExecutionFluent APIData Seeding 等高級功能,為你的 API 增強更多業務邏輯和性能優化。


SEO 關鍵詞回顧:

希望本文能幫助你快速上手 EF Core 與 SQL Server 集成!

原文引自YouTube視頻:https://www.youtube.com/watch?v=SIQhe-yt3mA

上一篇:

使用 Node.js 構建 API 服務器:從入門到實踐

下一篇:

如何使用 ASP.NET Core 實現評論更新功能:完整實戰講解
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費