gpt4 book ai didi

c# - MVC3 集合的 ValidationMessage

转载 作者:行者123 更新时间:2023-11-30 16:22:09 24 4
gpt4 key购买 nike

我们的 MVC3 模型包括一组这样的字符串

[CannotBeEmpty(ErrorMessageResourceName = "ColorCodes", ErrorMessageResourceType = typeof(Resources.Strings))]
[Display(ResourceType = typeof(Resources.Strings), Name = "ColorCodes")]
public List<string> ColorCodes { get; set; }

我在我的 View 中使用

显示这个模型
<div class="editor-field colors">
@Html.EditorFor(model => model.ColorCodes)
@Html.ValidationMessageFor(model => model.ColorCodes)
</div>

我的问题是 myValidationMessageFor 只呈现 1 行,而在下面的示例中,EditorFor reders 3 个输入字段。

 <input class="text-box single-line" id="ColorCodes_0_" name="ColorCodes[0]" type="text" value="#d6c0d6">
<input class="text-box single-line" id="ColorCodes_1_" name="ColorCodes[1]" type="text" value="">
<input class="text-box single-line" id="ColorCodes_2_" name="ColorCodes[2]" type="text" value="#fcfcfc">
<span class="field-validation-valid" data-valmsg-for="ColorCodes" data-valmsg-replace="true"></span>

如您所见,data-valmsg-for 包含错误的“ColorCodes”。它应该包含 ColorCodes_0_、ColorCodes_1_ 和 ColorCodes_2_。当模型包含 Collection 时,我应该如何使用 ValidationMessageFor。

最佳答案

您可以在 for 循环中迭代模型并获得预期结果。

@for(int i = 0; i < Model.ColorCodes.Count; i++)
{
@Html.EditorFor(model => model.ColorCodes[i])
@Html.ValidationMessageFor(model => model.ColorCodes[i])
}

关于c# - MVC3 集合的 ValidationMessage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12707173/

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