0

在我的 ASP.NET 应用程序中,我有用于数据、业务和 UI 层的单独项目。

我的业务层由具有声明性验证的普通对象组成,使用 DataAnnotations。

问题是,在保存它们时,我不确定如何处理验证,因为它们没有直接绑定到任何数据上下文,而是映射到单独的数据层对象。

有没有办法触发对这些类型的对象的验证?

4

1 回答 1

0

在这篇文章的 StackOverflow 上(间接)找到了答案。(感谢阿特伍德和斯波尔斯基!)

原来你必须调用 Validator 类。

所以我在我的 POCO 中添加了一个 Validate() 方法:

public void Validate()
{
    Validator.ValidateObject(this, new ValidationContext(this, null, null));
}

我还必须将 ComponentModel.DataAnnotations DLL 的 .NET 3.5 版本换成更新的 .NET 4.0 版本,其中包括 ValidationContext 类等。

于 2010-03-03T04:29:54.220 回答