MVC не реализуется в Winforms? - PullRequest
0 голосов
/ 08 августа 2010


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

Определение MVC из Википедии:
«Контроллер получает входные данные и инициирует ответ, совершая вызовы на объектах модели. Контроллер принимает входные данные от пользователя и инструктирует модель и область просмотра выполнять действия, основанные на этом входном сигнале».

Согласно определению, нельзя ли реализовать MVC с помощью WinNET-форм .NET? Потому что всегда представление должно получать входные данные, даже если впоследствии оно может делегировать запрос контроллеру. В приложениях MVC winforms, которые я видел до сих пор, это то, что происходит, и контроллером является НЕ тот, который получает входные данные напрямую и определяет, какое представление будет отображено.

Мне кажется, что все реализации MVC winforms являются различными вариантами MVP, а НЕ MVC.

(Я понимаю тот факт, что ASP.NET MVC придерживается классического определения MVC, поскольку контроллер сначала получает входные данные через механизм маршрутизации, а затем определяет, какое представление будет отображено и т. Д.)

Может кто-нибудь уточнить? Спасибо.

Ответы [ 2 ]

1 голос
/ 09 августа 2010

всегда представление должно получать входные данные, даже если впоследствии оно может делегировать запрос контроллеру. В приложениях MVC winforms, которые я видел до сих пор, это то, что происходит, и контроллером является НЕ тот, который получает вход непосредственно

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

Однако я бы определенно рекомендовал использовать подход MVP. Его относительно легко настроить, и он отлично сработал для меня.

Возможно, вы захотите прочитать ответы на вопрос «Как бы вы реализовали MVC в приложении WindowsForms?» для получения дополнительной информации.

0 голосов
/ 08 августа 2010

Вы правы, шаблон MVP применим к Winforms, и он отлично работает. У друга был проект с winforms, где он применил шаблон mvp.

Я не уверен, но я думаю, что MVC нельзя применить к Winforms, и по этой причине я думаю, что люди обратились к различным вариантам MVP.

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