2014-03-12 69 views
0

型號的DropDownList的SelectedItem不工作(剃刀ASP MVC5)

public class MyModel { 
    public string ItemXYZ { get; set; } 
} 

控制器

public ActionResult Edit(int? id) 
{ 
    var x = db.XYZs.Find(id); 
    ViewBag.Item_XYZ = new SelectList(new[] { "X", "Y", "Z"}, x.CurrentXYZ); 
} 

查看

@Html.DropDownList("XYZ123", @ViewBag.Item_XYZ as SelectList, new { @class = "special-class" }) 

問題

如果我將我的DropDownList更改爲mach設置在我的模型中的名稱,則所選值不起作用。

@Html.DropDownList("ItemXYZ" ....) 

如果我ViewBag項目的名稱匹配,SelectedItem不起作用。

@Html.DropDownList("Item_XYZ" ....) 

但是,如果我追加123(例如),SelectedItem工作得很好。

UPDATE

This is the same issue我有,但我不明白爲什麼或如何處理我的控制器的回報嗎?

+0

另外,如何訪問「XYZ123」的發佈值,因爲它不與我的控制器中的模型綁定在一起? – syllogistic

回答

1

在控制器使用代碼::

public ActionResult Edit(int? id) 
{ 
    var x = db.XYZs.ToList(); 
    ViewBag.TestDropdown = new SelectList(x, "ValueField", "TextField", "DefaultSelected"); 
} 

並在客戶端顯示下拉使用這樣的:

@Html.DropDownList("TestDropdown") 

完蛋了。 可能這會幫助你。

0

在各自的操作中接收名爲XYZ123的參數。 還包括XYZ123 in Bind屬性的作用。