我有一个ASP.Net MVC站点,它连接到一个Web服务。
网站的视图模型包含每组所需服务数据AccountDetails(包含AccountId,AccountType等),ContactDetails(包含名称,地址等)等的对象。
该服务有一个'CreateUser()'方法,它接受这些对象作为参数,然后它自己执行所有验证 - 交回一个Object,该Object包含已找到的任何错误的数组,包括具体财产/领域。
我想知道是否有办法将此返回的错误数据传递到DataAnnotations或其他内容。
我特别无法在模型本身中编写条件,因为Web服务中的验证条件随时都可以更改 - 我们希望这可以决定失败和成功的条件。
==进一步的信息让它变得更加清晰==
想象一下,我在本地(在View Model中)创建了ContactDetails类,我可以非常简单地执行此操作
public class ContactDetails
{
[IsRequired()]
[CustomAttributeofSomekind]
public string FirstName { get; set; }
public string LastName { get; set; }
}
然而,在这种情况下 - 如果我们想要更改验证标准,无论出于何种原因,我们都必须在Web服务和访问该服务的所有客户端网站中更改它。
我们不希望这样做 - 相反,如果(在上面)场景中突然需要ContactDetails.LastName并且必须不超过10个字符 - 这应该只需要在Web服务中进行更新。
答案 0 :(得分:2)
我认为你有两个选择: