gpt4 book ai didi

c# - MaxLength 属性不生成客户端验证属性

转载 作者:IT王子 更新时间:2023-10-29 03:40:15 24 4
gpt4 key购买 nike

我对 ASP.NET MVC3 客户端验证有一个奇怪的问题。我有以下类(class):

public class Instrument : BaseObject
{
public int Id { get; set; }

[Required(ErrorMessage = "Name is required.")]
[MaxLength(40, ErrorMessage = "Name cannot be longer than 40 characters.")]
public string Name { get; set; }
}

在我看来:

<div class="editor-field">
@Html.EditorFor(model => model.Name)
@Html.ValidationMessageFor(model => model.Name)
</div>

这是我为该字段的文本框生成的 HTML:

<input class="text-box single-line" data-val="true" data-val-required="Name is required." id="Name" name="Name" type="text" value="">

没有 MaxLengthAttribute 的迹象,但其他一切似乎都正常。

知道出了什么问题吗?

最佳答案

尝试使用 [StringLength] 属性:

[Required(ErrorMessage = "Name is required.")]
[StringLength(40, ErrorMessage = "Name cannot be longer than 40 characters.")]
public string Name { get; set; }

这是为了验证目的。例如,如果您想在输入上设置 maxlength 属性,您可以将自定义数据注释元数据提供程序编写为 shown in this post并自定义 default templates .

关于c# - MaxLength 属性不生成客户端验证属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6801656/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com