目录
- 简介
- 准备工作
- 创建项目
- 项目结构
- MySQL数据库连接
- Entity Framework Core
- 创建数据模型
- 数据库迁移
- 仓储模式实现
- 创建服务层
- 创建控制器
- 创建视图
- 测试应用程序
- 打包发布
- 总结
使用Visual Studio 2022开发C#(.NET 8.0)与MySQL完整指南
本教程将指导您使用Visual Studio 2022和.NET 8.0创建一个完整的C#应用程序,并使用MySQL作为数据库。我们将从项目创建开始,逐步介绍数据库连接、业务逻辑实现、用户界面开发,最后完成应用程序的打包发布。
准备工作
1. 安装所需软件
在开始之前,请确保您已安装以下软件:
- Visual Studio 2022 - 下载并安装社区版(免费)或专业版
- .NET 8.0 SDK - 包含在Visual Studio 2022中
- MySQL Server - 安装最新版本的MySQL社区版
- MySQL Workbench - 用于管理MySQL数据库的可视化工具(可选)
2. 安装必要的Visual Studio组件
启动Visual Studio Installer,确保已选择以下工作负载:
- ASP.NET和Web开发
- .NET桌面开发
- 数据存储和处理(包含Entity Framework工具)
3. 安装MySQL连接器
我们需要安装MySQL的.NET连接器:
-
打开NuGet包管理器控制台(工具 > NuGet包管理器 > 包管理器控制台)
-
运行以下命令:
Install-Package MySql.EntityFrameworkCore -Version 8.0.0 -
或者通过NuGet包管理器界面搜索并安装
MySql.EntityFrameworkCore
创建新项目
1. 创建ASP.NET Core Web应用
- 打开Visual Studio 2022
- 点击"创建新项目"
- 搜索并选择"ASP.NET Core Web应用(模型-视图-控制器)"
- 点击"下一步"
- 输入项目名称(例如"MySqlDotNetApp")和位置
- 在框架下拉菜单中选择".NET 8.0"
- 确保"不使用顶级语句"未选中(使用新的C# 10特性)
- 点击"创建"
2. 配置项目
创建项目后,让我们配置一些基本设置:
-
打开
appsettings.json文件,添加MySQL连接字符串:
{ "ConnectionStrings": { "DefaultConnection": "server=localhost;port=3306;database=mydotnetapp;user=root;password=yourpassword" }, "Logging": { "LogLevel": { "Default": "Information", "Microsoft": "Warning", "Microsoft.Hosting.Lifetime": "Information" } }, "AllowedHosts": "*" } -
将
yourpassword替换为您的MySQL root密码 -
如果使用不同的数据库名称或用户,请相应调整连接字符串
项目结构
新创建的ASP.NET Core MVC项目具有以下主要目录结构:
| 文件夹 | 描述 |
|---|---|
| Controllers | 包含处理HTTP请求的控制器类 |
| Models | 包含数据模型和业务逻辑 |
| Views | 包含Razor视图文件 |
| wwwroot | 包含静态文件(CSS, JS, 图片等) |
| Properties | 包含launchSettings.json等配置文件 |
| Data | 我们将创建此文件夹来存放数据库上下文 |
| Services | 我们将创建此文件夹来存放业务服务 |
| Repositories | 我们将创建此文件夹来实现仓储模式 |
MySQL数据库连接
1. 创建MySQL数据库
使用MySQL Workbench或命令行创建数据库:
-
打开MySQL命令行客户端或Workbench
-
执行以下SQL命令:
CREATE DATABASE mydotnetapp; USE mydotnetapp;
2. 配置数据库上下文
我们需要创建一个数据库上下文类来与MySQL交互:
-
在项目中创建
Data文件夹 -
添加一个新类
ApplicationDbContext.cs:
using Microsoft.EntityFrameworkCore; namespace MySqlDotNetApp.Data { public class ApplicationDbContext : DbContext { public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : base(options) { } // 这里将添加DbSet属性 } } -
在
Program.cs中注册数据库上下文:
using MySqlDotNetApp.Data; using Microsoft.EntityFrameworkCore; var builder = WebApplication.CreateBuilder(args); // 添加服务到容器中 builder.Services.AddControllersWithViews(); // 配置MySQL连接 var connectionString = builder.Configuration.GetConnectionString("DefaultConnection"); builder.Services.AddDbContext<ApplicationDbContext>(options => options.UseMySQL(connectionString)); var app = builder.Build();
Entity Framework Core
我们将使用Entity Framework Core作为我们的ORM(对象关系映射)工具,它允许我们使用C#类与数据库交互,而不需要编写大量SQL。
注意: Entity Framework Core支持多种数据库提供程序,对于MySQL,我们使用MySql.EntityFrameworkCore包。
创建数据模型
1. 创建第一个模型
让我们创建一个简单的产品模型作为示例:
-
在

最低0.47元/天 解锁文章
1244

被折叠的 条评论
为什么被折叠?



