J'ai les couches suivantes dans ma solution:
- App.Domain
- App.Service
- App.Core (vous appelez peut-être celui-ci App.DataLayer)
- App.Web
Le modèle de conception de logiciel n'est pas ma question, j'ai le modèle suivant Domain
public class Foo {
public int Id {get;set;}
public int Name {get;set;}
public int Value {get;set;}
}
Je veux utiliser ce modèle sur la vue (par exemple la page d'accueil) ET je veux utiliser Id, Name & Value
, donc si je veux créer ViewModel, j'ajouterai ce qui suit:
public class FooViewModel {
public int Id {get;set;}
public int Name {get;set;}
public int Value {get;set;}
}
Alors, c'est une bonne idée? ou simplement utiliser à la Foo
place de FooViewModel
?
Model
généralement transmis auView
? Pourquoi avez-vous exactement besoin de recréer les champs duModel
dans leView
? Si la séparation des préoccupations est un objectifMVC
, dans quelles circonstances voudrait-on faire la même chose avecModel
etView
? SiViewModel
c'est les deux, pourquoi ne pas étendre / composer les deuxModel
etView
?