Я пытаюсь заполнить SelectList
в методе действия для раскрывающегося списка в представлении.Раскрывающийся список отображается в представлении просто отлично, но атрибут selected
не отображается с использованием следующего кода:
public ActionResult Edit(int ID)
{
var ctx = new NorthwindEntities();
var product = ctx.Products.Where(p => p.ProductID == ID).SingleOrDefault();
var selectList = new SelectList(ctx.Categories, "CategoryID", "CategoryName");
selectList.Where(s => s.Value == product.CategoryID.ToString()).SingleOrDefault().Selected = true;
ViewData["CategoryID"] = selectList;
return View(product);
}
Однако, передача параметра selectedValue
конструктору SelectList
делает работу:
var selectList = new SelectList(ctx.Categories, "CategoryID", "CategoryName", product.CategoryID.ToString());
Я предполагаю, что либо проблема выражена в LINQ
, либо SelectedItem
можно указать только в конструкторе SelectList
.Есть идеи?