Yar*_*ter 6 html c# asp.net-mvc asp.net-membership membership-provider
我是ASP.NET和C#的新手我花了一天时间学习ASP.NET成员资格提供程序的基础知识我已经构建了所有的验证程序,但是在页面上输出我的错误消息时遇到了困难.
private void LogCreateUserError(MembershipCreateStatus status, string username)
{
string reasonText = status.ToString();
switch (status)
{
case MembershipCreateStatus.DuplicateEmail:
case MembershipCreateStatus.DuplicateProviderUserKey:
case MembershipCreateStatus.DuplicateUserName:
reasonText = "The user details you entered are already registered.";
break;
case MembershipCreateStatus.InvalidAnswer:
case MembershipCreateStatus.InvalidEmail:
case MembershipCreateStatus.InvalidProviderUserKey:
case MembershipCreateStatus.InvalidQuestion:
case MembershipCreateStatus.InvalidUserName:
case MembershipCreateStatus.InvalidPassword:
reasonText = string.Format("The {0} provided was invalid.", status.ToString().Substring(7));
break;
default:
reasonText = "Due to an unknown problem, we were not able to register you at this time";
break;
}
//CODE TO WRITE reasonText TO THE HTML PAGE ??
}
Run Code Online (Sandbox Code Playgroud)
将可变结果输出到页面的最佳方法是什么,因为我依赖于内置的ASP:Validators,直到现在.
MVC
看一个很好的例子......
ASP.NET MVC Html.ValidationSummary(true)不显示模型错误
基本上,你需要传播错误信息,也即事实,那就是一个错误,从控制器的看法. ModelStateDictionary.AddModelError()将为您处理这两项任务.
然后,您可以使用ValidationExtensions.ValidationSummary()来显示.
Web表单
你不具备使用验证这一点.大多数人没有.一个简单的风格DIV应该很好.
例如.
<div id="errorMessageDiv" runat="server"></div>
Run Code Online (Sandbox Code Playgroud)
注意runat参数.
现在在您的代码隐藏中,您可以尝试
errorMessageDiv.innerHTML = "some error message";
Run Code Online (Sandbox Code Playgroud)
如果你真的想使用验证器结账......
基本上,您将ErrorMessage和isValid参数设置为后面代码中的相关验证器.相关的ValidationSummary应显示错误消息.
| 归档时间: |
|
| 查看次数: |
21230 次 |
| 最近记录: |