Почему в большинстве реализаций ASP.NET MVP докладчики присоединяются к событиям View, а не к вызову методов Presenter? - PullRequest
3 голосов
/ 19 января 2011

Я заметил, что в реализации Webforms MVP и большинстве других примеров Presenter обычно присоединяет обработчики к событиям View. Почему представления не могут просто вызывать методы в презентаторе напрямую? Просто интересно, так как вся задача присоединения обработчика к событию, определения EventArgs для специальных параметров, проверки, является ли событие нулевым на стороне представления, кажется намного более утомительной, чем просто вызов метода.

1 Ответ

2 голосов
/ 01 февраля 2011

Конечно, они могут, и я считаю, что это лучший средний уровень.То, что вы описываете, я считаю стилем Observing Presenter.Это позволяет полностью отделить View от Presenter, делая представление менее восприимчивым к изменениям в Presenter.Но это также вносит сложности в тестирование, и это является причиной использования MVP для начала.Я не стал бы беспокоиться об этом стиле вообще.В очень большом проекте мы используем стиль Encapsulated Presenter, где View имеет ссылку на Presenter, внедренную через контейнер IoC, и view просто вызывает методы Presenter.Легко понять, легко отлаживать, легко тестировать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...