Считается ли плохой дизайн для создания пользовательских элементов управления «черного ящика», которые взаимодействуют напрямую с уровнем обслуживания (для выполнения операций CRUD, проверки и т. Д.)?
Под «черным ящиком» я подразумеваю, что они извлекают / сохраняют данные независимо от страницы, на которой они размещены (с использованием служб с внедрением IoC). Каждый UC может быть перетащен на страницу, и он будет просто работать . Имейте в виду, что ни в одном из этих UC нет бизнес-логики (это все на уровне домена).
Этот подход был обусловлен двумя факторами:
- В нашем приложении есть много страниц, которые, по сути, являются вариантами в одном и том же виде (с немного разными макетами).
Кроме того, наш дизайнер пользовательского интерфейса увлекается
разрешать отдельные части страницы
быть открытым для редактирования. Нажмите
здесь за неудачную попытку
иллюстрируя эту концепцию.
В любом случае, казалось, что предоставление UC возможности / ответственности за визуализацию и сохранение себя покончило бы с небольшим дублированием кода.
Если этот подход действительно считается «неприличным», пожалуйста, не стесняйтесь предложить альтернативный, более привлекательный (возможно, MVP?). Я застрял с WebForms в обозримом будущем.
Спасибо!