Предложения по переходу с ASP.NET WebForms на ASP.NET MVC? - PullRequest
5 голосов
/ 17 августа 2008

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

Что у меня есть: типичное приложение ASP.NET с сильно связанной презентационной / бизнес-логикой, всевозможные грязные сгенерированные ASP.NET Javascript и так далее.

Что я хочу: чистая разметка, сгенерированная ASP.NET MVC. - сказал Нуфф.

Какие-нибудь указатели, советы, хитрости или ошибки, о которых следует знать?

Спасибо!

Ответы [ 4 ]

3 голосов
/ 17 августа 2008

Ух ты, я не уверен, что мы здесь больше говорим о миграции - разница больше похожа на переписывание!


Как уже говорили другие, MVC - это совершенно новый способ создания веб-приложений - большая часть кода вашей презентации не будет распространяться.

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

Еще один вопрос: почему? У многих из нас есть большие унаследованные приложения, которые мы хотели бы использовать в новейших технологиях, но если ваше приложение уже работает, зачем переключаться?

Если бы я сейчас смотрел на новое приложение, MVC был бы очень сильным кандидатом, но не было бы достаточно большого выигрыша, чтобы переключиться на него в конце проекта.

2 голосов
/ 17 августа 2008

Любые указатели, советы, хитрости или есть что знать?

Ну, я думаю, что вы, вероятно, далеки от размышлений о хитростях и хитростях :) Как я уверен, вы знаете, ASP.NET MVC не какая-то новая версия ASP.NET, а полностью отличная от ASP.NET парадигма, вы не будете мигрировать, вы начнете совершенно новую разработку, чтобы заменить существующую систему. Так что, возможно, вы сможете разобраться с требованиями к приложению, но остальные, вероятно, будут пересозданы с нуля.

Исходя из (очень распространенных) проблем, которые вы описали в своей существующей кодовой базе, вам следует подумать о том, чтобы воспользоваться этой возможностью, чтобы изучить некоторые из лучших передовых методов проектирования слабосвязанных систем. Это легко сделать, потому что современные «лучшие практики» легки для понимания и практичны, и существует огромная поддержка сообщества и высококачественные инструменты с открытым исходным кодом, чтобы помочь в этом процессе.

В настоящее время мы также перемещаем приложение ASP / ASP.NET в ASP.NET MVC, и к такому выводу я привел мои подготовительные исследования.

Вот пост с ссылками на использование ASP.NET MVC , но я бы начал с , читая этот пост . Этот пост о NHibernate (инструмент ORM) на первый взгляд, но обсуждение и ссылки о правильной основе и является результатом подготовки к переносу сайта ASP.NET на MVC. Некоторые из ссылочных архитектур, о которых говорится в этом посте, основаны на ASP.NET MVC. Вот еще один пост о NHibernate , но в разделе «Рекомендации и справочные приложения» большинство, если не все перечисленные справочные приложения, также являются ASP.NET MVC-приложениями. Эталонные архитектуры могут быть чрезвычайно полезны для быстрого понимания того, как может быть разработан оптимальный, обслуживаемый сайт ASP.NET MVC.

1 голос
/ 28 августа 2008

WebForms могут жить с контроллерами MVC в одном приложении. По умолчанию маршрутизация не направляет запросы на файлы, которые существуют на диске. Таким образом, вы можете начать переписывать небольшие части вашего сайта за раз, чтобы использовать шаблон MVC, а оставшуюся часть - с помощью WebForms.

0 голосов
/ 17 августа 2008

Мое мнение таково, что эти две технологии настолько различны, что если у вас есть тесно связанный код в исходных приложениях веб-форм, лучше всего начать с выбора одного из них и преобразования его путем создания нового приложения ASP.NET MVC и разрывая код в соответствующие слои. Что поставит вас на путь повторного использования для переноса других приложений.

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