MVC в Silverlight - PullRequest
       25

MVC в Silverlight

2 голосов
/ 09 января 2010

Когда я обнаружил MVC (сначала с ASP.NET MVC), я подумал, что это священный грааль парадигм программного обеспечения.

Недавно я начал заниматься Silverlight и заметил, что проекты VS начинаются со страниц, похожих на Forms (Web и Win), с выделенным кодом и .xaml в качестве дизайна.

Есть ли в Silverlight эквивалент MVC (как для веб-приложений, так и для настольных приложений)? Что-то поддерживаемое Microsoft (например, ASP.NET MVC), где много ресурсов и помощи?

Я не вижу себя возвращающимся к кодам позади после обнаружения MVC. Является ли это наивной идеей, когда дело доходит до Silverlight, потому что она отличается от ASP.NET и не может легко внедрить в нее MVC?

Ответы [ 3 ]

4 голосов
/ 09 января 2010

Silverlight довольно близок к WPF, где шаблон проектирования MVVM очень хорошо подходит.

К сожалению, текущие воплощения SL не полностью поддерживают MVVM, поскольку в нем отсутствуют определенные типы (например, ICommand, IIRC), но в Silverlight 4 MVVM должна полностью поддерживаться.

2 голосов
/ 09 января 2010

Нет поддерживаемой Microsoft инфраструктуры MVC для Silverlight. Но MVC в любом случае не является естественной архитектурой для приложений Silverlight. Предполагаемая архитектура Silverlight и WPF - модель - представление - модель представления (MVVM), и это поддерживается непосредственно в Silverlight через инфраструктуру привязки данных. В MVVM вместо того, чтобы контроллеры обращались к разделенным представлениям, вы создаете классы модели представления , которые инкапсулируют данные и поведение, и представление реализует себя из них, используя привязку данных.

Наиболее близким Microsoft к платформе разработки Silverlight и WPF MVVM является Prism . Это далеко не полное решение, но вы можете дополнить его другими сторонними инструментами, такими как MVVM Foundation Джоша Смита .

0 голосов
/ 11 января 2010

У меня был некоторый успех при использовании фреймворка Лорана Буньона MVVMLight. http://mvvmlight.codeplex.com/

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