Archiwa tagu: asp.net

ASP.NET MVC 3 DropDownList

Dla przykładu mamy dwie tabele tak jak na poniższym schemacie:

aspnetmvc3dropdownlist

Przy dodawaniu bądź edycji danych według klasy Produkt, mamy pole ProductCategoryID. Dobrze by było, żebyśmy nie musieli znać ID kategorii, dlatego można wykorzystać html helper -> dropdownlist.
Od strony kontrolera należy dodać:
Gdzie CategoryOperations.GetList() zwraca nam listę wszystkich obiektów ProductCategory zapisanych w bazie. W widoku, tam gdzie pole ProductCategoryID jest pobierane jak zwykły int:
Zamieniamy na:
Po odpaleniu aplikacji powinniśmy zobaczyć coś takiego:
aspnetmvc3dropdownlist2
Mała uwaga 🙂 Trzeba pamiętać aby zmienna ViewBag’a nazywała się tak samo jak pole w modelu do którego się odwołujemy (ProductCategoryID). Dla dropdownlist mam listę obiektów z polami wartość oraz tekst wyświetlany (value, display text).