gpt4 book ai didi

asp.net-mvc - 没有 [required] 属性的 Razor 验证触发

转载 作者:行者123 更新时间:2023-12-05 08:24:16 28 4
gpt4 key购买 nike

这是我的模型

public class SchoolUser
{
public int schoolId { get; set; }

public int contact1UserId { get; set; }

public IEnumerable<DataLayer.salutations> Salutations { get; set; }

public int departmentId { get; set; }

public IEnumerable<DataLayer.departments> Departments { get; set; }

[Required]
public int roleId { get; set; }

public IEnumerable<DataLayer.rolesView> roles { get; set; }

这是我为 deptartmentid View 创建下拉列表的 Razor 代码

                <div style="width:75%; display:inline-block; margin-left:5px;">
@Html.DropDownListFor(model => model.departmentId, new SelectList(Model.Departments, "deptId", "description"), "")
@Html.ValidationMessageFor(model => model.departmentId)
</div>

让我们一直困惑的是,当没有选择部门时,razor validation 会提示。但是学校模型没有 [required] 属性。

“departmentId 字段是必需的。”

查看页面源我看到了

 <select data-val="true" data-val-number="The field departmentId must be a number." data-val-required="The departmentId field is required." id="departmentId" name="departmentId"><option value=""></option>
<option value="30">English</option>
</select>

出于某种原因,razor View 引擎已“决定”要求填充此字段,即使模型没有 [required] 或其他约束属性也是如此。

最佳答案

不可为空。你应该把它改成int? .

关于asp.net-mvc - 没有 [required] 属性的 Razor 验证触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14403682/

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