#asp.net
#asp.net
Вопрос:
Я пытался смешать WebForm и MVC в одном приложении, но пока у меня ничего не получалось. Похоже, что я пропускаю некоторые шаги, некоторые как, некоторые где. Я действительно устал.
Интересно, просто ли это плохая практика — иметь 3 проекта в решении: первый для модели, второй для веб-формы и последний для MVC.
Спасибо за помощь
Ответ №1:
Если у вас есть два отдельных проекта, один для MVC, а другой для классических веб-форм, это похоже на то, что у вас есть два разных веб-приложения. Эти два должны быть развернуты отдельно в разных виртуальных папках в IIS.
С другой стороны, у вас есть возможность смешивать классические веб-формы и ASP.NET MVC в одном проекте.
Обычно у людей есть какое-то устаревшее приложение WebForms, в которое они хотят перенести ASP.NET MVC. Но из-за огромного объема кода это невозможно сделать сразу, поэтому вы должны создать новый ASP.NET Приложение MVC и импортировать в него существующие устаревшие веб-формы, которые можно использовать напрямую. Затем вы могли бы постепенно обновлять устаревший код до шаблона MVC.
Но, исходя из личного опыта, я нахожу грязным смешивать классические веб-формы с ASP.NET MVC. У меня просто грязные руки. Что я делаю, так это то, что я бы сохранил устаревшие WebForms как отдельное приложение и начал заменять разные его разделы новым ASP.NET Приложение MVC и два из них будут взаимодействовать только с помощью стандартных методов HTTP (обычно GET и POST глаголы).
Комментарии:
1. Это интересно. Но мой вопрос заключается в том, чтобы узнать, считается ли хранение WebForm и MVC в 2 отдельных проектах плохой практикой. Учитывая также ваше мнение о смешении типов, у меня такое же чувство, что их тоже нельзя смешивать.
2. @Richard77, если вы хотите поговорить о плохих практиках , вам придется предоставить гораздо больше деталей о вашем сценарии. Говоря о том, есть ли 2 или 3 проекта в решении Visual Studio, где вы вряд ли имели бы смысл. Итак, каков ваш сценарий? Что вы пытаетесь сделать? С какими проблемами вы столкнулись? … Поэтому не ожидайте несубъективного ответа на то, что кажется неясным вопросом и неопределенным сценарием и контекстом.
3. Я согласен с вашим ответом. Но я хотел, чтобы вы сказали мне, есть ли плюсы и минусы, связанные с любым выбором. Спасибо.
4. @DarinDimitrov: Я согласен с тем, что это выглядит грязно, но не могли бы вы подробнее рассказать о последствиях маршрутизации этих страниц в одном домене? Кажется, что это очень удобно с RouteConfig MVC, тогда как я не уверен, как добиться такого прозрачного разделения в IIS. Вы запускаете старые страницы в подкаталоге, тем самым нарушая URL-адреса для старого сайта?