小白入门C#编写MVC登录小案例
发布人:shili8
发布时间:2025-02-05 04:57
阅读次数:0
**小白入门 C# 编写 MVC 登录小案例**
**前言**
在本文中,我们将一步步地讲解如何使用 C# 和 ASP.NET MVC 构建一个简单的登录系统。我们将从设置环境开始,逐步添加功能和代码。
**环境准备**
首先,我们需要安装 Visual Studio2019 或更高版本,并且确保 .NET Core SDK 已经安装在您的计算机上。如果您还没有安装,请下载并安装。
接下来,我们需要创建一个新的 ASP.NET MVC项目。打开 Visual Studio,选择 "文件" > "新建" > "项目...",然后选择 ".NET Core" > "ASP.NET Core Web Application"。
**设置环境**
在 "新建项目" 窗口中,选择 "Web Application (Model-View-Controller)",并命名为 "LoginExample"。点击 "确定"按钮创建项目。
接下来,我们需要安装必要的 NuGet 包。右键单击解决方案资源管理器中的 "LoginExample"项目,然后选择 "管理 NuGet 包..."。
在 "NuGet 包管理器" 窗口中,搜索并安装以下包:
* Microsoft.AspNetCore.Mvc* Microsoft.AspNetCore.Authentication.Cookies**创建模型**
我们的登录系统需要一个用户模型。我们将创建一个名为 "UserModel.cs" 的新类文件。
csharp// UserModel.cspublic class UserModel{
public string Username { get; set; }
public string Password { get; set; }
}
这个模型包含两个属性:用户名和密码。
**创建控制器**
我们的登录系统需要一个控制器来处理登录请求。我们将创建一个名为 "LoginController.cs" 的新类文件。
csharp// LoginController.csusing Microsoft.AspNetCore.Mvc;
using System.Security.Claims;
public class LoginController : Controller{
[HttpGet]
public IActionResult Index()
{
return View();
}
[HttpPost]
public async Task Login(UserModel userModel)
{
// 验证用户名和密码 if (userModel.Username == "admin" && userModel.Password == "password")
{
var claims = new ClaimsIdentity(new[]
{
new Claim(ClaimTypes.Name, userModel.Username),
});
await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, new ClaimsPrincipal(claims));
return RedirectToAction("Index", "Home");
}
ModelState.AddModelError("", "用户名或密码错误");
return View();
}
}
这个控制器包含两个方法:一个用于显示登录页面,另一个用于处理登录请求。
**创建视图**
我们的登录系统需要一个登录页面。我们将创建一个名为 "Index.cshtml" 的新视图文件。
csharp// Index.cshtml@model LoginExample.Models.UserModel<h1>登录</h1> <form asp-action="Login"> <div asp-validation-summary="ModelOnly" class="text-danger"></div> <div class="form-group"> <label asp-for="Username">用户名:</label> <input asp-for="Username" class="form-control" /> <span asp-validation-for="Username" class="text-danger"></span> </div> <div class="form-group"> <label asp-for="Password">密码:</label> <input asp-for="Password" class="form-control" type="password" /> <span asp-validation-for="Password" class="text-danger"></span> </div> <button type="submit" class="btn btn-primary">登录</button> </form>
这个视图包含一个表单,用于输入用户名和密码。
**测试**
现在,我们可以测试我们的登录系统了。打开浏览器,访问 ` "登录" 按钮。
如果一切正常,应该会跳转到首页。
**总结**
在本文中,我们一步步地讲解如何使用 C# 和 ASP.NET MVC 构建一个简单的登录系统。我们创建了模型、控制器和视图,并测试了我们的登录系统。如果您有任何问题或疑问,请随时联系我。

