代码之家  ›  专栏  ›  技术社区  ›  reustmd

ASP.NET MVC 2在视图上下文之外的模型验证

  •  2
  • reustmd  · 技术社区  · 14 年前

    我在网上读了这篇博文 ASP.NET MVC 2's new model validation 而且觉得很酷。通过向类属性添加几个属性,然后自动获得客户端和服务器端验证(只要控制器检查有效模型),我看到了保持干燥的价值。

    也就是说,想象一个ASP.NET MVC应用程序在一个更大的上下文中。也许我有一个ASP.NET MVC应用程序,带有这种验证和所有功能,但是我想向新的客户端公开一些东西,比如iPhone或Android应用程序(不仅仅是移动浏览器)。我必须编写一些web服务或使用与我的ASP.NET MVC应用程序相同的底层存储库/服务的东西。我可以重复使用这些验证材料吗?

    我不需要重新编写客户端验证吗?我看不出有什么办法可以解决这个问题,因为我将把序列化对象从Objective-C或任何东西中反序列化为非C类。

    难道我不需要重新编写服务器端验证吗?是否有某种方法可以调用ASP.NET MVC控制器上下文之外的对象上的ModelState(例如,作为我创建的与移动客户端对话的web服务的一部分)。

    1 回复  |  直到 14 年前
        1
  •  1
  •   Community Dunja Lalic    7 年前

    假设你说的是 Data Annotations

    other work extending them - annotationscontrib is one of them

    xVal Project 可能是按照与您之后相同的思路进行的—将验证规则转换为Javascript。不幸的是,我不确定您需要付出多少努力才能使xVal适应您的项目或重写它。

    对于在注释类上运行验证,可以使用 Validator (谢谢 womp