2014-03-13 76 views
0

我想編輯我的應用程序中的記錄,我去編輯頁面,但我不知道爲什麼我的下拉列表不顯示當我在創建頁面中選擇的選定值。這是我的代碼:Dropdownlist選定的值不起作用

我的控制器:

public ActionResult Edit(int? id) 
{ 
    if (id == null) 
    { 
     return new HttpStatusCodeResult(HttpStatusCode.BadRequest); 
    } 

    book book = db.books.Find(id); 
    if (book == null) 
    { 
     return HttpNotFound(); 
    } 

    ViewBag.books = new SelectList(db.books, "id", "name", book.value); 
    return View(book); 
} 

和我的行動:

@using (Html.BeginForm()) 
{ 
    @Html.AntiForgeryToken() 
    @Html.DropDownList("value", (IEnumerable<SelectListItem>)ViewBag.books , "Choose.") 
} 

是什麼問題呢?在恍惚中我可以看到選項中的一個是selectedvalue,但dropdownlist不顯示選定的值。爲什麼?

+0

'books.value'不應該說是'book' – KyorCode

+0

@KyorCode這本書,是我的錯。 –

回答

1

變化

ViewBag.books = new SelectList(db.books, "id", "name", books.value); 

ViewBag.books = new SelectList(db.books, "id", "name", book.id); 
+0

它不起作用。 –

+0

嘗試將視圖中的dropdownlist聲明更改爲:@ Html.DropDownList(「books」)然後從Viewbag中填充下拉列表shoudl並將其設置在您在控制器中設置的Id上 – szpic