范围数据注释没有像预期的那样工作

本文关键字:工作 数据 注释 范围 | 更新日期: 2023-09-27 18:02:54

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

备注:我的项目是基于"MVC4 Web应用程序+ Razor视图引擎+ 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包已安装。但是,我确实试图卸载它,但没有成功。

范围数据注释没有像预期的那样工作

你在EditorFor中的第二个论点没有任何意义。查看一下editor的帮助,或者只是在SO(这个网站)上使用它的例子。这可能会破坏视图,无法得到验证。首先,只需删除逗号和数字,看看是否有效,如果不行,请查找如何使用EditorFor的示例。

编辑

你的评论使我的回答完全无关紧要。你应该准确地向公众展示你要展示的东西。无论如何,试着看看这个成功回答的问题是否解决了你的问题:Range DataAnnotation似乎不工作

请让我知道这是否有帮助。谢谢。