C# MVC 实现登录功能(MySQL 数据库)
在 ASP.NET Core MVC 框架中,实现登录功能涉及创建用户模型、设置数据库连接、编写控制器逻辑和设计视图界面。使用 MySQL 数据库时,需要通过 Entity Framework Core(EF Core)进行数据操作。下面,我将逐步指导您完成整个过程,确保代码真实可靠、结构清晰。整个过程包括:项目创建、MySQL 配置、模型定义、控制器实现、视图设计、认证逻辑和安全处理。
步骤 1: 创建 ASP.NET Core MVC 项目
首先,使用 Visual Studio 创建一个新的 ASP.NET Core Web 应用项目。
- 打开 Visual Studio,选择“创建新项目”。
- 选择“ASP.NET Core Web 应用 (Model-View-Controller)”模板。
- 项目命名(例如:LoginDemo),并确保选择 .NET 6 或更高版本。
- 创建项目后,安装必要的 NuGet 包:
- 打开 NuGet 包管理器,安装:
Microsoft.EntityFrameworkCore:用于 EF Core。Pomelo.EntityFrameworkCore.MySql:MySQL 的 EF Core 提供程序(推荐,因为它兼容性好)。
- 打开 NuGet 包管理器,安装:
步骤 2: 配置 MySQL 数据库连接
设置 MySQL 数据库连接字符串和上下文类。
- 在
appsettings.json文件中添加 MySQL 连接字符串:{ "ConnectionStrings": { "DefaultConnection": "server=localhost;port=3306;database=logindb;user=root;password=yourpassword;" }, // 其他配置... }- 替换
yourpassword为您的 MySQL 密码,logindb为数据库名(需提前在 MySQL 中创建)。
- 替换
- 创建数据库上下文类
AppDbContext.cs:using Microsoft.EntityFrameworkCore; using System.Collections.Generic; namespace LoginDemo.Models { public class AppDbContext : DbContext { public AppDbContext(DbContextOptions<AppDbContext> options) : base(options) { } public DbSet<User> Users { get; set; } // 用户表 } } - 在
Program.cs中注册数据库上下文:using Microsoft.EntityFrameworkCore; using LoginDemo.Models; var builder = WebApplication.CreateBuilder(args); // 添加服务到容器 builder.Services.AddControllersWithViews(); builder.Services.AddDbContext<AppDbContext>(options => options.UseMySql(builder.Configuration.GetConnectionString("DefaultConnection"), new MySqlServerVersion(new Version(8, 0,

最低0.47元/天 解锁文章
1217

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



