C # MVC Pattern 1: n - просмотр: контроллер? - PullRequest
0 голосов
/ 26 марта 2011

Я должен сделать простое приложение, редактор xHTML с некоторой базовой проверкой на C # с WinForm при использовании шаблона MVC.Я немного знаком с MVC, но не на C #, но я начал программировать эту вещь, и шаблон немного смутил меня.

Несколько слов для описания моей ситуации: как модель я создал 1 класс-оболочкуEditorModel и 2 класса - Атрибут и Элемент.Теперь, чтобы обернуть эти два, у меня есть словари с элементами (где строка - это имя элемента) и attribute () в классе EditorModel.Я думаю, что это должно работать просто отлично.В качестве представления у меня есть инициализация WinForm и обработка событий.Я не совсем уверен, хорошо ли иметь обработку событий в представлении, в этих методах событий я просто вызываю методы контроллера, но я не уверен, что это хороший способ для части представления.Но настоящая путаница приходит в части контроллера.Я думал о создании 4 классов - сумматор, парсер, валидатор, маркер.Теперь я не уверен, стоит ли мне создавать еще один класс-оболочку EditorController.Но если я сделаю это, я не знаю, как все это должно работать вместе, потому что все эти 4 класса должны работать с такими элементами представления, как textBox и т. Д.

Так что в основном мой вопрос заключается вПравильная идея здесь, и я должен или не должен сделать класс EditorController, чтобы обернуть эти 4 управляющих класса.Любые предложения будут оценены.Спасибо.

1 Ответ

0 голосов
/ 27 марта 2011

Проблема в том, что в большинстве практических реализаций у вас есть Модель и ViewController. Для самых простых вещей просто используйте серверную часть WinForms и события в качестве контроллера для вашей модели, для более сложных вещей продолжайте связывать события с вашим специализированным контроллером.

Итак, в основном я говорю о том, что вам, вероятно, не следует добавлять EditorController, но вы должны видеть внутренний интерфейс winform как EditorController, если он не слишком сложен.

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