【发布时间】:2013-06-19 15:02:40
【问题描述】:
我有一个与 TempData 绑定的下拉列表。当它第一次出现时它显示所有值。选择一个特定值后,该值正确保存在数据库中。但所选值没有显示。我给下面是我的代码。
为了检索我已经写在索引动作控制器中
TempData["Clients"] = (IEnumerable<SelectListItem>)ClientService.GetALLClientsName().Select(C=>new SelectListItem { Value=C.CLIENT_ID.ToString(),Text=C.CLIENT_NAME});
编辑后检索时无法获取所选值。我在下面这样用剃刀写了
@if (TempData["SelectedClientName"] != null && TempData["SelectedClientId"] != null)
{
foreach (SelectListItem sli in lstClients)
{
if (sli.Value.Equals(TempData["SelectedClientId"].ToString()))
{
sli.Text = TempData["SelectedClientName"].ToString();
sli.Value = TempData["SelectedClientId"].ToString();
sli.Selected = true;
break;
}
}
}
@Html.DropDownList("drpClientName", lstClients, "--Select--")
我已经在 lstClients 中转换了 TempData["Clients"]。请帮助我。
【问题讨论】:
-
您不应将下拉数据保存在 TempData 中。改用 ViewBag 或 ViewData
标签: asp.net-mvc-3