@Html.ValidationSummary()的使用

@Html.ValidationSummary()用于返回表单在后台验证的结果。

如,

当后台if (ModelState.IsValid)失败后,错误信息就会显示到 @Html.ValidationSummary(),

当前后台验证都通过,但某些逻辑验证没有通过,比如用记名密码错误的,可以手工添加错误信息,
ModelState.AddModelError("", "The current password is incorrect or the new password is invalid.");这个也会显示到@Html.ValidationSummary()

@Html.ValidationSummary()可携带一个bool型参数,true 或者 false。

如,@Html.ValidationSummary(true),true意味着只显示模型层面的错误消息,比如数据模型验证错误,

若为false, 则意味着显示所有信息,信息显示顺序为,属性错误在前,模型错误在后。

转载于:https://www.cnblogs.com/moby41/p/4514409.html

ASP.NET MVC框架提供了一种简单而强大的方式来创建登录和注册页面。以下是一个简单的示例代码: 在Controllers文件夹中创建一个名为AccountController的控制器,其中包含以下方法: ```csharp public class AccountController : Controller { // 注册页面 public ActionResult Register() { return View(); } [HttpPost] public ActionResult Register(RegisterViewModel model) { if (ModelState.IsValid) { // 在这里处理用户注册逻辑,例如将用户信息存储到数据库中 // 注册成功后,可以重定向到登录页面或其他页面 return RedirectToAction("Login"); } // 如果模型验证失败,返回注册页面并显示错误信息 return View(model); } // 登录页面 public ActionResult Login() { return View(); } [HttpPost] public ActionResult Login(LoginViewModel model) { if (ModelState.IsValid) { // 在这里处理用户登录逻辑,例如验证用户名和密码 // 登录成功后,可以重定向到用户的个人资料页面或其他页面 return RedirectToAction("Profile"); } // 如果模型验证失败,返回登录页面并显示错误信息 return View(model); } // 用户个人资料页面 public ActionResult Profile() { return View(); } } ``` 在Views文件夹中创建一个名为Account的文件夹,并在该文件夹下创建以下视图文件: 1. Register.cshtml ```html @model RegisterViewModel @using (Html.BeginForm("Register", "Account", FormMethod.Post)) { @Html.ValidationSummary() <div> @Html.LabelFor(m => m.Username) @Html.TextBoxFor(m => m.Username) @Html.ValidationMessageFor(m => m.Username) </div> <div> @Html.LabelFor(m => m.Password) @Html.PasswordFor(m => m.Password) @Html.ValidationMessageFor(m => m.Password) </div> <input type="submit" value="Register" /> } ``` 2. Login.cshtml ```html @model LoginViewModel @using (Html.BeginForm("Login", "Account", FormMethod.Post)) { @Html.ValidationSummary() <div> @Html.LabelFor(m => m.Username) @Html.TextBoxFor(m => m.Username) @Html.ValidationMessageFor(m => m.Username) </div> <div> @Html.LabelFor(m => m.Password) @Html.PasswordFor(m => m.Password) @Html.ValidationMessageFor(m => m.Password) </div> <input type="submit" value="Login" /> } ``` 3. Profile.cshtml ```html <h2>Welcome to your profile!</h2> ``` 上述代码中的`RegisterViewModel`和`LoginViewModel`是视图模型,用于封装注册和登录表单中的数据。 这只是一个简单的示例,你可以根据自己的需求来修改和扩展。同时,你还需要在全局.asax文件中配置路由规则,以便正确地处理请求。 希望这能帮到你!如果有任何进一步的问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值