【发布时间】:2023-04-07 22:54:02
【问题描述】:
我有一个 ASP.Net MVC 站点,它连接到 Web 服务。
站点的视图模型包含每组所需服务数据AccountDetails(包含AccountId、AccountType等)、ContactDetails(包含Name、Address等)等对象。
服务有一个“CreateUser()”方法接受这些对象作为参数,然后它自己执行所有的验证——返回一个对象,该对象包含已发现的任何错误的数组,包括名称特定的属性/字段。
我想知道是否有办法将此返回的错误数据传递到 DataAnnotations 或其他东西中。
我特别不能在模型本身中编写条件,因为 Web 服务中的验证条件随时都可以更改 - 我们希望这决定什么失败和什么成功。
== 更清晰的信息 ==
假设我在本地(在视图模型中)创建 ContactDetails 类,我可以非常简单地做到这一点
public class ContactDetails
{
[IsRequired()]
[CustomAttributeofSomekind]
public string FirstName { get; set; }
public string LastName { get; set; }
}
但是在这种情况下 - 如果我们想要更改验证标准,无论出于何种原因,我们都必须在 Web 服务和访问该服务的所有客户端网站中都进行更改。
我们不想这样做 - 相反,如果(在上面的)场景中突然需要 ContactDetails.LastName 并且不得超过 10 个字符 - 这应该只需要在 Web 服务中更新。
【问题讨论】:
-
我很困惑...你能改写这个吗?尤其是将此返回的错误数据传递到DataAnnotations 或其他东西中 的意思。如果也能显示一些代码就好了。
标签: asp.net asp.net-mvc web-services validation