W moim rozwiązaniu mam następujące warstwy:
- App.Domain
- App.Service
- App.Core (może to się nazywa App.DataLayer)
- App.Web
Wzorzec projektowania oprogramowania to nie moje pytanie, mam następujący model w Domain
public class Foo {
public int Id {get;set;}
public int Name {get;set;}
public int Value {get;set;}
}
Chcę użyć tego modelu w widoku (na przykład na stronie głównej) ORAZ chcę użyć Id, Name & Value
, więc jeśli chcę utworzyć ViewModel, dodam następujące:
public class FooViewModel {
public int Id {get;set;}
public int Name {get;set;}
public int Value {get;set;}
}
Czy to dobry pomysł? lub po prostu użyj Foo
zamiast FooViewModel
?
Model
zwykle nie jest to przekazywaneView
? Dlaczego dokładnie musisz odtworzyć polaModel
wView
? Jeśli celem jest rozdzielenie obaw, toMVC
w jakich okolicznościach chciałoby się zrobić to samo zModel
iView
? JeśliViewModel
tak, dlaczego nie, rozszerzając / komponując obaModel
iView
?