Se un elenco di selezione è impostato su più in ASP.NET MVC, come funziona la modellazione del modello?Come funziona un elenco di selezioni multiple con l'associazione modello in ASP.NET MVC?
Cosa restituisce per gli elementi selezionati, un array?
Se un elenco di selezione è impostato su più in ASP.NET MVC, come funziona la modellazione del modello?Come funziona un elenco di selezioni multiple con l'associazione modello in ASP.NET MVC?
Cosa restituisce per gli elementi selezionati, un array?
Sì, per impostazione predefinita un elenco di più elementi verrà inviato attraverso una matrice dei valori selezionati.
This article ha ulteriori informazioni, incluso come utilizzare le viste fortemente tipizzate con una selezione multipla.
Dalla "articolo" collegato:
List<int> ToppingIds
.In VegTableViewmodel:
public IEnumerable<MultiSelectList> Vegetables { get; set; }
Nel Controller: Get lista verdure, e poi passarlo alla proprietà verdure del VegTableViewModel.
viewmodel.Vegetables = vegetables .Select(d => new MultiSelectList(d.VegName));
Nella Vista:
@Html.ListBoxFor(m => m.L, new MultiSelectList(Model.Vegetables.Select(d => d.Items))
Sì, restituisce un array.
vista del modello:
public class MyViewModel
{
public int[] SelectedIds { get; set; }
public IEnumerable<SelectListItem> Items { get; set; }
}
Controller:
public ActionResult Index()
{
var model = new MyViewModel
{
// fetch the items from some data source
Items = Enumerable.Select(x => new SelectListItem
{
Value = x.Id,
Text = "item " + x.Id
})
};
return View(model);
}
Vista:
@model MyViewModel
@Html.ListBoxFor(x => x.SelectedIds, Model.Items)