asp.mvc登录怎么写
时间: 2024-04-29 19:03:44 浏览: 12
ASP.NET MVC 登录的实现可以使用 ASP.NET Identity,它提供了许多有用的功能,比如用户注册、登录、密码重置等。以下是一个基本的登录示例:
在视图中:
```
@using (Html.BeginForm()) {
@Html.AntiForgeryToken()
<div>
@Html.LabelFor(model => model.UserName)
@Html.EditorFor(model => model.UserName)
</div>
<div>
@Html.LabelFor(model => model.Password)
@Html.PasswordFor(model => model.Password)
</div>
<div>
@Html.CheckBoxFor(model => model.RememberMe)
@Html.LabelFor(model => model.RememberMe, new { @class = "checkbox-inline" })
</div>
<input type="submit" value="Log in" />
}
```
在控制器中:
```
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
{
if (!ModelState.IsValid)
{
return View(model);
}
var user = await UserManager.FindAsync(model.UserName, model.Password);
if (user != null)
{
await SignInAsync(user, model.RememberMe);
return RedirectToLocal(returnUrl);
}
else
{
ModelState.AddModelError("", "Invalid username or password.");
return View(model);
}
}
```
注意:此示例仅用于演示目的,如需更完整且安全的实现,请参考 ASP.NET Identity 文档和最佳实践。