У меня есть следующие слои в моем решении:
- App.Domain
- App.Service
- App.Core (возможно, вы называете это App.DataLayer)
- App.Web
Шаблон проектирования программного обеспечения не мой вопрос, у меня есть следующая модель в Domain
public class Foo {
public int Id {get;set;}
public int Name {get;set;}
public int Value {get;set;}
}
Я хочу использовать эту модель в представлении (например, на домашней странице) И я хочу использовать Id, Name & Value
, поэтому, если я хочу создать ViewModel, я добавлю следующее:
public class FooViewModel {
public int Id {get;set;}
public int Name {get;set;}
public int Value {get;set;}
}
Так это хорошая идея? или просто использовать Foo
вместо FooViewModel
?
Model
обычно не передаетсяView
? Почему именно вам нужно воссоздать поляModel
вView
? Если целью является разделение интересовMVC
, при каких обстоятельствах можно сделать то же самое сModel
иView
? ЕслиViewModel
есть и то и другое, то почему бы не расширять / составлять обаModel
иView
?