使用 .NET Core 3.1 连接和操作 MySQL 数据库

介绍

.NET Core 是一个跨平台的开发框架,支持多种操作系统和开发语言。在 .NET Core 3.1 版本中,我们可以很方便地使用 MySQL 数据库。

本文将介绍如何在 .NET Core 3.1 中使用 MySQL 数据库。我们将会使用 Entity Framework Core 来简化数据库操作,并提供代码示例来帮助读者更好地理解。

准备工作

在开始之前,我们需要完成以下准备工作:

  1. 安装 .NET Core SDK 3.1 或更新版本。
  2. 安装 MySQL 数据库和 MySQL Connector/NET 驱动程序。

创建项目

首先,我们需要创建一个新的 .NET Core 3.1 项目。可以通过以下命令在命令行中创建项目:

dotnet new console -n MyProject

然后,使用以下命令进入项目目录:

cd MyProject

现在,我们已经准备好开始编写代码了。

添加依赖

在项目中使用 Entity Framework Core 连接 MySQL 数据库,我们需要添加相关的依赖项。

首先,打开项目文件 MyProject.csproj,并添加以下内容:

<ItemGroup>
  <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.0" />
  <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="3.1.0" />
  <PackageReference Include="MySql.Data.EntityFrameworkCore" Version="8.0.18" />
</ItemGroup>

这些依赖项将会帮助我们在项目中使用 Entity Framework Core 连接和操作 MySQL 数据库。

创建实体类

在我们开始连接和操作数据库之前,我们需要创建一个实体类来映射数据库中的表。

在本文中,我们假设有一个名为 User 的表,包含 IdName 字段。我们可以创建一个名为 User 的实体类来映射这个表。在项目中创建一个新的文件 User.cs,并添加以下代码:

public class User
{
    public int Id { get; set; }
    public string Name { get; set; }
}

这个实体类将会映射数据库中的 User 表。IdName 属性对应数据库中的字段。

创建数据库上下文类

下一步,我们需要创建一个数据库上下文类,用于连接和操作数据库。

在项目中创建一个新的文件 MyDbContext.cs,并添加以下代码:

using Microsoft.EntityFrameworkCore;

public class MyDbContext : DbContext
{
    public DbSet<User> Users { get; set; }

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseMySQL("server=localhost;database=mydb;user=root;password=mypassword");
    }
}

这个数据库上下文类继承自 DbContext,并包含一个名为 UsersDbSet<User> 属性。 OnConfiguring 方法用于配置数据库连接字符串。

请替换 server=localhost;database=mydb;user=root;password=mypassword 为你的实际数据库连接字符串。

连接和操作数据库

现在,我们已经准备好连接和操作数据库了。

在项目的 Program.cs 文件中,添加以下代码:

using System;
using System.Linq;

class Program
{
    static void Main()
    {
        using (var db = new MyDbContext())
        {
            // 添加新用户
            var user = new User { Name = "Alice" };
            db.Users.Add(user);
            db.SaveChanges();

            // 查询所有用户
            var users = db.Users.ToList();
            Console.WriteLine("All Users:");
            foreach (var u in users)
            {
                Console.WriteLine(u.Name);
            }
        }
    }
}

这段代码会在数据库中添加一个新的用户,并查询出所有的用户并打印出来。

在命令行中执行以下命令来运行程序:

dotnet run

如果一切正常,你将会看到数据库中的所有用户被打印出来。

恭喜!你已经成功地使用 .NET Core 3.1 连接和操作 MySQL 数据库。

总结

本文介绍了如何在 .NET Core 3.1 中使用 MySQL 数据库。通过使用 Entity Framework Core,我们可以很方便地连接和操作数据库。

我们首先创建了一个实