使用ASP.NET Web API在AngularJS中进行简单的输入验证

时间:2016-09-14 09:46:44

标签: c# angularjs validation asp.net-web-api

所以,我现在在一些项目中使用过AngularJS(最近一个是MEAN堆栈项目)。我不是特别满意的项目的一部分是输入验证的处理。

我很快将启动另一个项目,该项目使用AngularJS SPA与ASP.NET Web API进行通信。

如果我有一些要求:

  • 简单的输入验证(必填字段,数字范围,日期范围等)
  • 需要通过API和AngularJS客户端应用相同的验证
  • e.g。第三方客户端应具有与AngularJS客户端相同的输入验证规则,而无需(尝试)复制它们。

人们如何在不重复输入验证逻辑的情况下解决这个问题?

在两次编写所有验证逻辑时感觉真正不好 - 一次在Web API领域,一次在AngularJS领域。我对如何做到这一点有一些想法,但我很想得到一些建议。

感谢。

1 个答案:

答案 0 :(得分:2)

我认为您正在寻找Fluent验证,而jquery不引人注目。这里有一篇帖子描述了在这里使用Web Api:https://brettedotnet.wordpress.com/2013/05/01/asp-net-web-api-validation-a-one-more-better-approach。这基本上将一些规则作为HTML中的属性呈现出来。它确实需要一个ajax帖子进行一些验证(我认为这主要是针对后端处理的一些条件验证),但如果想要避免在客户端重写它们,那么它可能会有所作为。

您也可以在此处插入.NET流畅的验证库:https://github.com/JeremySkinner/FluentValidation