Вопрос в том как правильно организовывать модели в mvc.
1.Вопрос
Например есть страница создания продукта:
public class ProductCreateViewModel
{
[Required]
[Display(Name = "Наименование продукта")]
public string Name { get; set; }
//... еще свойства
}
Страница изменения продукта:
public class ProductEditViewModel
{
public int Id { get; set; }
[Required]
[Display(Name = "Наименование продукта")]
public string Name { get; set; }
//... еще свойства
}
т.е получается для того чтобы изменить продукт нужны теже свойста что и при создании и одно дополнительное Id. Получается какой-то копипаст из первого во второй. Как правильно делать по феншую?
2.Вопрос
На главной выводится список продуктов которые лежат в определенном разделе
Раздел: Молочные
1.Творог
2.Сыр
3.Ряженка
Раздел:Хлебобулочные
1.Печенье
2.Кекс
public class ProductListViewModel
{
List<SectionTdo> Sections {get; set;}
}
public class SectionTdo
{
public int Id { get; set; }
public string Name { get; set; }
List<ProductTdo> Products
}
public class ProductTdo
{
public int Id { get; set; }
public string Name { get; set; }
}
Правильно ли сформирована модель?... Просто немного запутался, получается что для каждого представления своя модель, не смотря на копипаст полей из сущностей домена или как то можно организовать это все подругому.