基础模型中的远程验证属性

时间:2013-09-25 08:24:37

标签: c# asp.net-mvc-4 modelbinders remote-validation

我有抽象模型,它具有将被验证的属性。我想为控制器参数设置当前控制器。所以,我添加了继承自Remote属性的自定义属性。问题是当模型绑定时,validate属性应用一次。

[SimpleListRemoteValidation("ValidateName", HttpMethod = "POST", AdditionalFields = "Id,SimpleModelType")]
    public string Name { get; set; }

SimpleListRemoteValidation继承自Remote属性

public class SimpleListRemoteValidationAttribute:System.Web.Mvc.RemoteAttribute
  {
    public SimpleListRemoteValidationAttribute(string action)
      : base(action, HttpContext.Current.Request.RequestContext.RouteData.Values["controller"].ToString())
    {
    }
  }

有模型绑定

@foreach (var p in Model.GetProperties())
  {
    <td>
      @Html.Editor(p.Name)
      @Html.ValidationMessage(p.Name)
    </td>
  }

在第一个请求中,它放入属性的构造函数。如果我转到另一个控制器,它就不会发生。

0 个答案:

没有答案