szukam niektórych opinii na dwa różne podejścia do definicji ViewModelpłaskim vs Zagnieżdżony ViewModel Zajęcia w ASP.NET MVC
Mam klasy firma
public class Company
{
public string Name { get; set; }
public int CountryID { get; set; }
}
Do tworzenia i edycji widoków I potrzebna jest lista krajów, aby wypełnić listę DropDownList dla wyboru kraju. Widzę dwie szerokie możliwości wyboru struktury ViewModel, które zostały szczegółowo opisane poniżej.
Zagnieżdżony ViewModel
public class CompanyCreateEditViewModel
{
public Company Company { get; set; }
public IEnumerable<Country> Countries{ get; set; }
....
}
płaskim ViewModel
public class CompanyCreateEditViewModel
{
public string Name { get; set; }
public int CountryID { get; set; }
public IEnumerable<Country> Countries{ get; set; }
....
}
Obecnie jestem sprzyjający zagnieżdżonego podejście, gdyż oszczędza mnie od definiowania pól po raz drugi, ale chcę otworzyć go na lepsze podejście i komentarze.
Dzięki
Całkowicie się zgadzam. Używam zagnieżdżonych do prezentacji - 'CompanyViewModel' - i płaskich do wprowadzania danych -' CompanyCreateEditViewModel'. –
@JarrettMeyer Czy używasz AutoMappera do zagnieżdżonego i płaskiego viewmodelu? Czy jest jakiś problem? Jestem po prostu ciekawy, mam złe doświadczenia podczas używania AutoMappera z zagnieżdżonym viewmodelem – Willy
Mam złe doświadczenia z używaniem AutoMappera dookoła ... – Worthy7