问题描述
|
我有一个带有表列的EF4模型,不允许为null。
在SL客户端应用程序上,我始终会收到\“ columnName is required \”,因为我在xaml中使用文本框[NotifyOnValidationError = True,ValidatesOnExceptions = True]进行绑定。
我的问题是:
我可以在元数据类上覆盖默认的必需错误消息,但是如何将其作为自定义验证呢?我的意思是我不愿意在密封的元数据类中执行此操作:
[required(ErrorMessage = \"Coin English Name Is required\")]
[CustomValidation(typeof (CustomCoinVaidation),\"ValidateCoinName\")]
public string coin_name_1 { get; set; }
我想将其包含在我将针对coin_name_1的所有类型的错误定义的自定义验证方法中,如下所示:
public static ValidationResult ValidateCoinName(string name,ValidationContext validationContext)
{
if (string.IsNullOrWhiteSpace(name))
{
return new ValidationResult(\"The Coin Name should be specified\",new [] { \"Coin Name\" });
}
return ValidationResult.Success;
}
为什么?
有两个原因:
1-将所有验证岛分组为一个容器(以便进一步轻松地定位)。
2-我不希望将coin_name_1显示给最终用户,但希望将其显示为\“ Coin English Name \”。
第二个问题:
我在xaml页面上有一个ValidationSummary控件,该页面上显示所有错误,但显示的是“ \ coin_name_1 \”列的原始名称,我如何才能将其更改为Meanigfil。
最好的祝福
瓦利德
解决方法
A1:
我刚刚离开了现在实施的要求。
A2:
我经历了不同的来源,发现了这种艺术。
它显示了如何设置验证摘要的样式:
http://www.ditran.net/common-things-you-want-know-about-silverlight-validationsummary
我还异步地实现了客户端验证。
问候