0
我爲Silverlight商業應用程序使用啓用silverlight的wcf服務和實體框架。但是沒有爲實體生成自動生成的元數據類。所以我不能輕易地爲使用DataAnnotations的實體添加驗證,例如[必需的],[ReadOnly(true)] ... 我爲這些實體創建了一個元數據類,這裏是服務器端的代碼:如何使用啓用silverlight的wcf和實體框架爲silverlight項目中的實體添加驗證
[MetadataTypeAttribute(typeof(SAMPLE.SAMPLEMetadata))]
public partial class SAMPLE
{
internal sealed class SAMPLEMetadata
{
private SAMPLEMetadata()
{
}
[Required]
[ReadOnly(true)]
public string SERIALNO { get; set; }
}
}
,這裏是在客戶端的代碼,這是在服務引用forlder和服務引用下,文件名是Reference.cs:
[System.Runtime.Serialization.DataMemberAttribute()]
public string SERIALNO {
get {
return this.SERIALNOField;
}
set {
if ((object.ReferenceEquals(this.SERIALNOField, value) != true)) {
this.SERIALNOField = value;
this.RaisePropertyChanged("SERIALNO");
}
}
}
所以不存在像不會產生DataAnnotaions [必填] ... 而且驗證當然不起作用。 我不知道如何使用元數據類爲啓用silverlight的wcf和實體框架添加驗證。 有人可以幫助我嗎?
您可以通過使用視圖模型類,並通過實現INotifyDataErrorInfo界面添加驗證。 – vorrtex 2012-02-11 12:29:05