Я искал во всем Интернете, чтобы найти ответ на такой простой вопрос, но я не могу найти его.
Предположим, у нас есть Продукт, на котором есть страница редактирования, где мы можемустановить название, цену и категорию.
В соответствии с шаблоном MVC (MVVM) мы имеем:
- 2 модели ProductModel и ProductCategoryModel
- ViewModel, которыесодержит продукт и список категорий (для раскрывающегося списка)
- Просмотр для отображения страницы редактирования
Помимо вышеизложенного, у нас есть ProductService, который обрабатывает операции CRUD
// Model
public class ProductModel
{
public int ProductId { get; set; }
public string Name { get; set; }
public decimal Price { get; set; }
public int CategoryId { get; set; }
}
// Model
public class ProductCategoryModel
{
public int CategoryId { get; set; }
public string Name { get; set; }
}
// ViewModel
public class EditProductViewModel
{
public ProductModel Product { get; set; }
public List<ProductCategoryModel> Categories { get; set; }
}
Вопрос в том, кто отвечает за заполнение ViewModel?Я думал, что это можно сделать в конструкторе модели представления, однако люди говорят, что это плохая практика.Заполнение его в контроллере также кажется неправильным.