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"] を変換しました。助けてください。