如何禁用asp.net MVC中某些字段的客户端验证

时间:2011-07-02 11:47:21

标签: asp.net asp.net-mvc validation

如何禁用asp.net MVC中某些字段的客户端验证。 我没有为Order属性定义任何验证,但它在客户端显示“需要订单字段”。我想禁用订单的客户端验证。

   public class Product
    {
     ...
     [Required(ErrorMessage = "Name Is Required")]
     public String Name { get; set; }

     public int Order { get; set; }
     ...
    }

2 个答案:

答案 0 :(得分:6)

intnon nullable类型。是不能分配空值,因此元数据提供程序自动使其成为必需。如果您的商家不需要为Order类填写Product字段,请将其设置为可空类型 - Nullable<int> Order。这样,除非您明确指出,否则不需要它。 那么,还有另一种方法 - 在客户端使用一些脚本。但是这将仅在客户端禁用验证,在发布到服务器之后,除非您将其设为nullable,否则仍会显示错误消息。假设你为asp.net mvc 3使用默认的jquery验证插件,你可以使用remove rules function

答案 1 :(得分:1)

我发现这个最简单的方法是使用?将值类型(在本例中为int)设置为可空值类型的字符:

public int?订单{get;组; }