我的视图中有一个事件处理程序,它会在单击 id 时做出反应。单击 id 时,我在控制器中调用了一个方法 1。
在同一个视图中,我有一个下拉列表,我用我的方法 1 中设置的 ViewData 填充它。
但是,因为一开始,索引被调用,而 ViewData 仍然是空的,我得到错误,没有这样的 ViewData 来填充我的下拉列表。
仅当 Viewdata 不是 eppty 时如何设置下拉列表?
我的视图中有一个事件处理程序,它会在单击 id 时做出反应。单击 id 时,我在控制器中调用了一个方法 1。
在同一个视图中,我有一个下拉列表,我用我的方法 1 中设置的 ViewData 填充它。
但是,因为一开始,索引被调用,而 ViewData 仍然是空的,我得到错误,没有这样的 ViewData 来填充我的下拉列表。
仅当 Viewdata 不是 eppty 时如何设置下拉列表?
您可以在输出下拉列表之前测试 ViewData 中是否有值:
<% if (ViewData["values"] != null) { %>
<%= Html.DropDownList("selectedValue", (IEnumerable<SelectListItem>)ViewData["values"]) %>
<% } %>
如果您使用视图模型,甚至更好:
<% if (Model.Values != null) { %>
<%= Html.DropDownListFor(x => x.SelectedValue, Model.Values) %>
<% } %>