2013-08-07 25 views
1

我已經綁定了來自實體框架的列表框數據。我在該列表框中選擇了多個值。但是,價值觀並未被解僱。該屬性的數量僅爲0。我使用下面的代碼:ListBox的多個選擇在asp.net中不起作用mvc4

public class Sample1 
{ 
[Key] 
public int SampleId{ get; set; } 
public string SampleDesc{ get; set; } 
} 
public class ExpModel 
{ 
public List<Sample1> Sample{ get; set; } 
} 
public ActionResult Index() 
{  
ViewData["SampleList"] = new List<Sample1>(entity.samp); 
return View(); 
} 
@Html.ListBoxFor(model => model.Sample, new SelectList(((List<Details.Models.Sample1>)ViewData["SampleList"]), "SampleId", "SampleDesc")) 

我該怎麼辦?請幫我...

+0

請張貼您的模型和您的控制器操作。 – ataravati

回答

0

您應該ListBoxFor助手綁定到簡單/標值,如字符串或整數集合的屬性:

public class Sample1 
{ 
    [Key] 
    public int SampleId { get; set; } 
    public string SampleDesc { get; set; } 
} 

public class ExpModel 
{ 
    public List<int> SelectedSampleIds { get; set; } 
} 

然後:

public ActionResult Index() 
{  
    ViewData["SampleList"] = new List<Sample1>(entity.samp); 
    return View(); 
} 

,並在您的視圖:

@Html.ListBoxFor(
    model => model.SelectedSampleIds, 
    new SelectList(
     (List<Details.Models.Sample1>)ViewData["SampleList"], 
     "SampleId", 
     "SampleDesc" 
    ) 
) 

現在,當提交表單時,SelectedSampleIds COLLEC將在列表框中包含選定的ID。

+0

感謝Darin Dimitrov.I明白了。 – user2285613

相關問題