📜  ef core dbfirst - C# (1)

📅  最后修改于: 2023-12-03 14:40:56.803000             🧑  作者: Mango

使用 EF Core DB First 创建 C# 应用

简介

EF Core是一个轻量级、可扩展、跨平台且开源的对象关系映射框架,可用于.NET平台上的任何应用程序。EF Core支持使用Code First、Model First和Database First三种不同的方法创建应用程序。 Database First是一种方法,它基于现有的数据库架构生成实体类和DbContext类。

在本文中,将介绍如何在C#应用程序中使用EF Core以Database First的方式创建实体类和DbContext类。

步骤
1. 安装EF Core

使用以下命令通过NuGet安装EF Core:

Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.EntityFrameworkCore.SqlServer
2. 创建空的C#应用程序

创建一个空的C#控制台应用程序(.NET Core)项目。

3. 创建一个数据库

在SQL Server中创建一个名为“MyDatabase”的数据库。

4. 将数据库架构反向工程到实体类和DbContext类中

使用以下命令将数据库架构反向工程到实体类和DbContext类中:

Scaffold-DbContext "Server=.;Database=MyDatabase;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models

请注意,这里使用“Scaffold-DbContext”命令来生成实体类和DbContext类。

“-OutputDir”选项用于指定反向工程的代码应放置的目录。

这将生成多个实体类和一个DbContext类。实体类用于表示数据库中的表,DbContext类用于与数据库交互。

5. 运行应用程序

在Console中输出一些数据(如使用查询获取数据)以验证代码的正确性。

结论

使用EF Core的Database First方法,我们可以轻松地通过反向工程从现有的数据库架构生成实体类和DbContext类。

本文概述了如何使用上述方法创建C#应用程序。

参考文献
代码片段
//在Main方法中运行以下代码以获取数据
using (var context = new MyDatabaseContext())
{
    var persons = context.Persons.ToList();
    foreach (var person in persons)
    {
        Console.WriteLine($"{person.Firstname} {person.Lastname}");
    }
}