У меня есть простая форма, и у нее есть MultiSelectList
внутри. Этот метод формы - GET. Когда я выберу больше предметов в SelectList
и отправлю форму, я хочу посмотреть, что я выбираю. Для этого я использую SelectedValues
. Но он выбирает только первый элемент в MultiSelectList
.MVC multiselect выбранные значения без модели
Мой Вид:
<form method="get">
@Html.DropDownList("kategori", new MultiSelectList(ViewBag.KategoriSelect, "id", "isim", ViewBag.KategoriSelected),
new
{
@multiple = "true ",
@size = "8"
})
<input type="submit" value="gönder" />
</form>
Мой контроллер:
public ActionResult Index(int[] kategori)
{
var db = new MyDbContext();
var aracs = db.aracs.ToList();
//items for multi select
ViewBag.KategoriSelect = db.kategoris.ToList();
//selected items
ViewBag.KategoriSelected = kategori;
return View(aracs);
}
Мой Get URL: http://localhost:6151/?kategori=2&kategori=1&kategori=4&kategori=3
Но он должен выбрать 11. что я должен сделать для этого?
Сделайте это свойство и используйте модель представления со свойствами 'int [] SelectedCategories' и' IEnumerabe CategoryList' –
Можете ли вы привести пример для этого? – ASPMaker
OP уже имеет 'int [] kategori' в своем ActionResult и jsut, создав его свойство Viewmodel, не поможет. BTW @ASPMaker, вы получили эту исправленную или по-прежнему нуждаетесь в помощи? –