范围数据注释没有按预期工作,任何想法?

时间:2013-03-08 17:20:41

标签: c# asp.net-mvc data-annotations

我假设验证检查将允许从1到30的任何输入值。但是,当我在此字段中输入4到9的值时,它会提示错误。有什么建议吗?请...

备注:我的项目基于“MVC4 Web应用程序+ Razor View Engine + C#.net”。

using System.ComponentModel.DataAnnotations;

[Range(1, 30, ErrorMessageResourceType = typeof(Resources.ErrorMessage), ErrorMessageResourceName = "RangeErrorMsg")]
public int HowManyDays { get; set; }

以下是我的Razor视图来源

<div class="editor-label">
    @Resources.Booking.Duration
</div>
<div class="editor-field">
    @Html.EditorFor(model => model.HowManyDays)
    @Html.ValidationMessageFor(model => model.HowManyDays)
</div>

我无法上传我的屏幕转储,因为我需要至少10个声誉才能这样做。很奇怪,它只显示4到9范围内的值警报。顺便说一句,我安装了“DataAnnotationsExtensions.MVC3”NuGet包。但是,我确实试图在没有运气的情况下解除它。

1 个答案:

答案 0 :(得分:0)

EditorFor中的第二个论点没有任何意义。 请查看EditorFor help或仅查看其在SO(本网站)上使用的示例。 这可能会破坏您的观点,您无法进行验证。 首先,只需删除逗号和数字,看看是否有效,如果没有查找有关如何使用EditorFor的示例。

修改

您的评论使我的回答完全无关紧要。您应该准确了解您要让公众看到的内容。 无论如何,试着看看这个成功回答的问题是否能解决你的问题: Range DataAnnotation Doesn't Seem to Be Working

如果有帮助,请告诉我。 感谢。