您的位置:首页 > 其它

使用PIAB和VAB实现业务实体的自动验证

2008-09-05 15:42 579 查看
微软企业库的VAB(Validation Application Block)用来提供对业务实体的字段有效性进行验证,PIAB(Policy Injection Application Block)用来实现AOP技术,关于VAB的内容请参考园子里TerryLee
(http://www.cnblogs.com/Terrylee/archive/2006/12/25/Enterprise_Library_3_Validation_Application_Block.html)的文章,关于PIAB的内容请参考Artech(http://www.cnblogs.com/artech/archive/2008/08/08/1263418.html)的文章。
我们做系统时根据需求会写很多业务实体,这些实体一般用来作为业务层方法的参数(输入或者输出),例如 public bool AddUser(UserEntity userentity)这个业务方法,UserEntity是我们定义的业务实体,我们在写这个方法时,先要对这个实体里面的属性值进行合法性验证,才能进行以后的操作,当然,我们可以在在这个方法中手工写一些验证的代码来完成,只是比较麻烦而已,我们也可以借助VAB,在实体定义的属性上增加一些验证的Attribute,如下:

Code

public class TestValitate : MarshalByRefObject

{

[ValidateCallHandler()]

public bool AddUser(UserEntity userentity)

{

//userentity.ValidateEntity();

return true;

}

}

然后写个测试,看看:

TestValitate test = PolicyInjection.Create<TestValitate>();

UserEntity userentity = new UserEntity();

userentity.UserName = "xiaozhuang";

userentity.Age = 101;

userentity.Email = "iamxiaozhuang@163.com";

try

{

test.AddUser(userentity);

}

catch (CustomException ex)

{

Console.Write(ex.Message);

}

Console.ReadKey();

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐