这是我的情况。
我正在使用EPiServer 9,我已按如下方式配置了SqlServerMembershipProvider:
<add name="SqlServerMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
connectionStringName="EPiServerXYZ"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="false"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="8"
minRequiredNonalphanumericCharacters="1"
passwordAttemptWindow="10"
applicationName="/"
passwordStrengthRegularExpression="^.*(?=.{8,})(?=.*\d)(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[^\w\d\s]).*$" />
一切正常,验证和不同的场景。
我们的问题是成员资格提供程序显示的错误消息是使用配置创建的,最终不会给出用户友好的消息,例如:
我希望设置一个自定义错误消息,它真实地向用户解释我们在正则表达式中用于验证密码的所有要求。
到目前为止,我能想到这一点的唯一方法是实现/扩展我们正在使用的当前提供程序,以便在验证出现问题时设置自定义错误消息,但我想可能还有另一种更好/更简单的方法这样做。
提前致谢!
答案 0 :(得分:0)
我同意您的自定义错误消息提示。
考虑显示一个div,其中包含在检测到输入错误之前隐藏的UI错误消息。这可以位于输入文本框的右侧或提交按钮的上方。显示的错误消息取决于检测到的输入错误。
对于任何密码/确认密码输入错误,请定义通用密码错误消息,然后列出与您的问题一起列出的密码输入要求。
可以为用户名和电子邮件地址输入错误添加其他错误消息。