1

我有以下问题:我正在使用远程验证来验证字段,现在我正在尝试管理异常

public class ValidationController : Controller
{
    List<string> values = new List<string>() { "AAAA", "BBBB" }; //blacklist

    public JsonResult NameAllowed(string ID)
    {
        throw new Exception();
        //return Json(!values.Contains(ID), JsonRequestBehavior.AllowGet);
    }

}

但在这种情况下,表单没有提交(通过网络捕获,开发工具栏出现错误 500)并且没有出现任何错误。

  1. 管理异常的最佳方法是什么(例如超时和不可预测的异常)?
  2. 是否存在跳过这些错误以提交表单的解决方案(任何服务器端参数)?

提前致谢

4

1 回答 1

1

远程验证只能用作客户端的图形反馈,以防止用户向服务器发送无用数据。您应该始终对您必须验证的所有内容进行服务器端验证,如果您这样做,那么您的表单将被发送但未被批准,并且您的验证错误将与您的无效输入一起显示重新呈现的表单。

将客户端/远程验证作为具有两个目的的“预验证”

  1. 防止无用的服务器端处理
  2. 提供更具响应性的数据验证,而不是等待提交表单。

然而,它们不应该用于实际验证数据。

编辑

也就是说,如何正确编写验证代码,使用 try catch 并且不让任何未处理的异常溜走?

于 2012-09-07T11:21:36.403 回答