У меня есть 3 слоя дизайна. (UI / BLL / DAL)
UI = ASP.NET MVC
На мой взгляд, у меня есть коллекция товаров для категории.
Пример: Продукт 1, Продукт 2 и т. Д.
Пользователь может выбрать или удалить (установив флажок) товары из представления и, наконец, сохранить их как коллекцию, когда пользователь отправит эти изменения.
С помощью этого трехслойного дизайна, как будет сохраняться эта коллекция продуктов? Как осуществляется фильтрация товаров (удаление и добавление) к объекту категории?
Вот мои варианты.
(A)
Это ответственность контроллера, тогда псевдокод будет
- Поиск продуктов, выбранных или удаленных пользователем, и сравнение с существующими записями.
- Добавить или удалить эту коллекцию для объекта категории.
- Call SaveCategory (категория); // BLL CALL
Здесь первые 2 шага процесса выполняются в контроллере.
(B)
Это ответственность BLL, тогда псевдокод будет
- Соберите продукты, которые когда-либо выбирал пользователь
- SaveCategory (категория, товары); // BLL CALL
Здесь необходимо, чтобы SaveCategory (BLL) решал, какие продукты следует удалить и добавить в базу данных.
Спасибо