これはちょうど私をナットにつなぎます。 cont
レコードをリストに入れると、すべての値が同じになるように が変更されます。値は最後のレコードの値です。ASP.NET - Foreach最後の要素が全体のリストに表示される
public ActionResult Index()
{
var cont = db.AspNetUsers.ToList();
var list = new List<SelectListItem>();
SelectListItem ctr = new SelectListItem();
foreach (var item in cont)
{
ctr.Text = item.Email;
ctr.Value = item.Email;
list.Add(ctr);
//last iteration everything is fine, every element of list holds
//another value
}
// debugger shows that all list elements have the same text and value
TempData["list"] = list;
return View();
}
ありがとうございます!
追加したいアイテムごとに新しいSelectListItemを作成する必要があります。つまり、すべての追加に*同じ* 'SelectListItem'を使用しており、ループの繰り返しごとにプロパティを変更しています。 –
ありがとうございます! –