不允许在int属性MVC C#中使用负值

Pab*_*bar 3 c#

我在MVC C#中确实有一个强类型的视图,其中用户必须输入一个int值,该属性是

 [Required(ErrorMessage="especificar correlativo")]
    [Display(Name = "Correlativo")]
    [Range(1, 9999, ErrorMessage = "correlativo no valido")]
    [RegularExpression(@"^(((\d{1})*))$", ErrorMessage = "correlativo no valido")]
    public int correlativo1
    {
        get { return Correlativo1; }
        set { Correlativo1 = value; }
    }
Run Code Online (Sandbox Code Playgroud)

但是我的问题是,当显示vies时,输入使用户可以通过输入右侧的箭头指定负值

在此处输入图片说明

是的,它显示验证消息

在此处输入图片说明

但我不希望(因为开始的原因)让用户可以选择指定负值。

这是视图中的输入

<div class="form-group">
                    <div class="col-md-2">
                        @Html.LabelFor(model => model.correlativo1, htmlAttributes: new { @class = "control-label" })
                        @Html.EditorFor(model => model.correlativo1, new { htmlAttributes = new { @class = "form-control left-border-none", @id = "idCorrelativo", @title = "especifique correlativo de licitación", @Value = ViewBag.correlativo } })
                        @Html.ValidationMessageFor(model => model.correlativo1, "", new { @class = "text-danger" })
                    </div>
Run Code Online (Sandbox Code Playgroud)

你能告诉我如何解决吗?

mac*_*ura 5

实际上,请查看向min编辑器添加属性是否可行。基本上要渲染:min="0"在最终的HTML中。因此,在您的代码中:

<div class="form-group">
    <div class="col-md-2">
         @Html.LabelFor(model => model.correlativo1, htmlAttributes: new { @class = "control-label" })
         @Html.EditorFor(model => model.correlativo1, new { htmlAttributes = new { @class = "form-control left-border-none", @id = "idCorrelativo", @title = "especifique correlativo de licitación", @Value = ViewBag.correlativo, @min="0" } })
         @Html.ValidationMessageFor(model => model.correlativo1, "", new { @class = "text-danger" })
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

您也可以使用它来添加max属性(如果需要)