【问题标题】:Numeric Validation when using a HTML Text Box使用 HTML 文本框时的数值验证
【发布时间】:2016-10-09 00:13:56
【问题描述】:

刚刚学习了验证,所以我在我的模型上定义了一个属性,如下所示:

public string NumberOfThings { get; set; }

还有这样的 HTML:

  @Html.TextBoxFor(t => t.NumberOfThings , new {style = "width: 10%", @class = "form-control"})

现在我想为其添加验证,数据在数据库模式中保存为字符串。我的验证逻辑希望它说任何大于 0 的数字都可以。

所以我了解了验证,并且我可以做这样的事情:

[StringLength(3, MinimumLength = 1)]
public string SelectedQuestions { get; set; }

然后我看到我的ModelState 无效。
但是由于我是新手,所以我无法弄清楚我应该用什么来注释我的属性的正确验证,以便它说任何大于 0 的数字都可以。

【问题讨论】:

    标签: regex asp.net-mvc validation razor asp.net-mvc-5


    【解决方案1】:

    一些东西是int而不是字符串。

    你可以这样做:

    [Range(1, int.MaxValue, ErrorMessage = "some message")]
    public int NumberOfThings { get; set; }
    

    然后在您的 html 中使用 ValidationFor,它会查看您在模型中定义的内容:

    @Html.EditorFor(model => model.NumberOfThings )
    @Html.ValidationMessageFor(model => model.NumberOfThings )
    

    【讨论】:

      猜你喜欢
      • 2023-04-07
      • 2012-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-10
      相关资源
      最近更新 更多