asp.net-mvc-3 – 模型binder属性类型int的问题

前端之家收集整理的这篇文章主要介绍了asp.net-mvc-3 – 模型binder属性类型int的问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的视图模型中,我有一个属性
[required]
    [MaxLength(4)]
    [DisplayName("CVC")]
    public int BillingCvc { get; set; }

在我看来,我使用它像这样:

@Html.TextBoxFor(x => x.BillingCvc,new { size = "4",maxlength = "4" })

当我发布表单我得到这个错误信息:

Unable to cast object of type 'System.Int32' to type 'System.Array'.

但是,如果我将属性更改为字符串而不是int,我不会得到错误。将其声明为int允许客户端验证器检查该字段是否包含非数字。

解决方法

问题是您使用的类型为int的MaxLength。

见:http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.maxlengthattribute(v=vs.103).aspx

编辑:你;可能在寻找Range(int,int)

猜你在找的asp.Net相关文章