0
在我的ASP.NET應用程序中,我爲數據層,業務層和UI層分別有不同的項目。驗證斷開的POCOs
我的業務層由具有聲明性驗證的純對象組成,使用DataAnnotations。
問題是,在保存它們時,我不確定如何處理驗證,因爲它們不直接綁定到任何數據上下文,而是映射到單獨的數據層對象。
有沒有辦法觸發這些類型的對象驗證?
在我的ASP.NET應用程序中,我爲數據層,業務層和UI層分別有不同的項目。驗證斷開的POCOs
我的業務層由具有聲明性驗證的純對象組成,使用DataAnnotations。
問題是,在保存它們時,我不確定如何處理驗證,因爲它們不直接綁定到任何數據上下文,而是映射到單獨的數據層對象。
有沒有辦法觸發這些類型的對象驗證?
在StackOverflow上找到了答案(間接),在this post上。 (謝謝Atwood & Spolsky!)
原來你必須調用Validator類。
所以我增加了一個validate()方法,以我的POCO:
public void Validate()
{
Validator.ValidateObject(this, new ValidationContext(this, null, null));
}
我也只好換我ComponentModel.DataAnnotations DLL的更新.NET 4.0版本,其中包括的.NET 3.5版本ValidationContext類等。