Je cherche des opinions sur deux approches différentes de la définition ViewModelplat vs Nested ViewModel classes dans ASP.NET MVC
J'ai une classe de la société
public class Company
{
public string Name { get; set; }
public int CountryID { get; set; }
}
Pour les Créer et Éditer les I besoin d'une liste de pays pour remplir une DropDownList pour la sélection de CountryID. Je peux voir deux grands choix pour structurer le ViewModel qui sont détaillés ci-dessous.
Nested ViewModel
public class CompanyCreateEditViewModel
{
public Company Company { get; set; }
public IEnumerable<Country> Countries{ get; set; }
....
}
plat ViewModel
public class CompanyCreateEditViewModel
{
public string Name { get; set; }
public int CountryID { get; set; }
public IEnumerable<Country> Countries{ get; set; }
....
}
À l'heure actuelle, je suis en faveur de l'approche qu'il me Nested sauve de la définition des champs pour une deuxième fois, mais je veux pour l'ouvrir à de meilleures approches et commentaires.
Merci
Entièrement d'accord. J'utilise imbriqué pour la présentation - 'CompanyViewModel' - et plat pour la saisie de données -' CompanyCreateEditViewModel'. –
@JarrettMeyer Utilisez-vous AutoMapper pour un modèle de vue imbriqué et plat? Y a-t-il un problème? Je suis juste curieux, j'ai une mauvaise expérience lors de l'utilisation AutoMapper avec viewmodel imbriqué – Willy
J'ai une mauvaise expérience en utilisant AutoMapper tout autour ... – Worthy7