Asp.net EditorFor的最小值和最大值

Asp.net EditorFor的最小值和最大值,asp.net,asp.net-mvc,razor,asp.net-mvc-5,Asp.net,Asp.net Mvc,Razor,Asp.net Mvc 5,我一直在尝试使用此代码在我的编辑器上设置最小值和最大值: <label id="LbStartYear" style="width: 200px">From Date: @Html.EditorFor(model => model.SelectedYearBegin, new { htmlAttributes = new { @min = "0", @max = "20" } })</label> From Date:@Html.EditorFor(model=>

我一直在尝试使用此代码在我的
编辑器上设置最小值和最大值:

<label id="LbStartYear" style="width: 200px">From Date: @Html.EditorFor(model => model.SelectedYearBegin, new { htmlAttributes = new { @min = "0", @max = "20" } })</label>
From Date:@Html.EditorFor(model=>model.SelectedYearBegin,new{htmlAttributes=new{@min=“0”,@max=“20”})
但是没有成功。最小值和最大值从未设置。我尝试从
0
20
中删除引号,也尝试了使用和不使用
@


有什么想法吗?

只需在模型属性上使用
Range
DataAnnotation属性即可。通过使用此属性,可以限制用户输入不在范围内的任何其他数字

导入以下命名空间-

using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
然后用
Range
attribute-

[Range(0,20)]
public int SelectedYearBegin { get; set; }
有关范围属性的详细信息,请参见-

[Range(0,20)]
public int SelectedYearBegin { get; set; }
您可以在Web.config中启用客户端验证-

 <add key="ClientValidationEnabled" value="true"/> 
 <add key="UnobtrusiveJavaScriptEnabled" value="true"/> 
如果您不想使用MVC 5.1及更高版本,只需使用
TextBoxFor
-

@Html.TextBoxFor(model => model.SelectedYearBegin, new { type = "number", min = 0, max = 100 })

请详细说明您的答案。@AlexandreSeverino我用详细信息更新了我的答案。我如何“确保链接JQuery时不引人注目并验证JS文件?”?我认为修改web.config是没有必要的,有一个帮助程序
Html.EnableClientValidation(true)