更新:
这是可行的,但需要私人反思:
void CreateUserWizard1_CreatingUser(object sender, LoginCancelEventArgs e) {
typeof(CreateUserWizard).GetField(
"_unknownErrorMessage",
System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)
.SetValue(sender, "My error message");
e.Cancel = true;
}
基本上,您将此字段设置为您想要的错误消息,然后 CreateUserWizard 会选择它。作为私人反射,它不是一种“受支持”的技术,但它至少是一个可以考虑的选项,如果没有其他方法可行。
我认为您不必为此做任何特别的事情。通常,任何支持客户端验证的东西都有匹配的服务器端验证逻辑。事实上,对于重名之类的东西,只有服务器端验证,所以我认为关闭 javascript 不会影响场景。
当您禁用 javascript 并发布重复名称时,您到底看到了什么?你能用一个简单的页面重现这个问题,还是有一些可能影响它的附加因素?
我尝试使用普通的 CUW 并禁用 javascript,并且正确显示了重复的用户错误。