我正在使用填充的视图模型渲染视图。Visual Studio的“即时”窗口确认在渲染时,“标题”和“国家/地区”已设置了值,但只有“国家/地区”值是正确的。标题已还原为第一个SelectListItem值。
切换下拉列表的来源(都可以使用相同的帮助器)没有任何区别,无论我使用Title属性的来源总是默认返回到第一项。
如果我改用@ Html.TextBoxFor ...,则该值正确显示。我的问题更多是寻求帮助-导致这种行为的原因是什么?
MyViewModel
public string Title {get; set;}
public string Country {get; set;}
看法
...
ViewBag.Title = "Test"
...
@Html.DropDownListFor(x => x.Title, CertificateFormHelpers.GenerateTitles(), new {@class = "form-select"})
@Html.DropDownListFor(x => x.Country, Countries.All(), new { @class = "form-select" })
更新:视图具有冲突的属性名称。更新了视图以包括此声明。
我的问题更多是寻求帮助-什么会导致这种行为?
在这种情况下,ViewBag具有一个名为“ Title”的属性,而我的模型也具有一个“ Title”的属性。ViewBag.Title的值在用于填充下拉选项的集合中不存在,因此为什么下拉列表默认为该集合中的第一项。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句