Для чего нужен контроллер в WCSF?

Я все еще пытаюсь обернуть свой мозг вокруг MVP. Для чего мне использовать класс контроллера? Это где я получаю доступ к ресурсам данных?

3 ответа

Решение

Контроллер должен воздействовать на модель, возможно, заполняя модель через вызов уровня обслуживания к базе данных. Обычно с запросами из представления контроллер выполняет действия с моделью.

Представление - это презентация на экране.

Presenter управляет потоком между представлением и контроллером.

Причина разделения презентаторов и контроллеров может заключаться в том, что вы можете повторно использовать определенный контроллер с другим презентатором и т. Д.

Контроллер в примерах WCSF от MS хранит данные, совместно используемые несколькими докладчиками в модуле, предоставляет методы для обработки этих общих данных и управления общими данными в веб-сеансе. Например, список объектов денежных переводов, используемых презентатором NewTransfer и презентатором TransferHistory.

Данные, которые являются уникальными только для одного докладчика, могут быть доступны через контроллер, но это не обязательно. В этом случае докладчик может управлять данными и доступом к данным веб-сеанса.

Это моя интерпретация после рассмотрения нескольких примеров за пару лет, например

Я не уверен, чье определение "контроллера" они используют, но оно не такое, как в MVC.

По моему мнению, докладчик не должен быть связан с технологией пользовательского интерфейса и должен иметь непосредственное отношение к уровню услуг модели. В приложении должен быть только один контроллер, который может быть тесно связан с технологией пользовательского интерфейса. Навигация по страницам может быть абстрагирована в контроллере. Я чувствую, что шаблон MVP-Controller на основе WCSF - это небольшое изменение исходного шаблона MVP.

Позвольте мне предложить, чтобы презентатор был реализован для повторного использования, а контроллеры - нет.

Другие вопросы по тегам