Смешивание проектов VB ASP.NET и C # ASP.MVC в одном решении - PullRequest
3 голосов
/ 07 января 2009

Фон

Мы являемся командой TDD, унаследовавшей унаследованное приложение ASP.NET, и пытаемся взять его под контроль, разделив проблемы представления, бизнеса и доступа к данным и тем самым улучшая тестируемость. Мы добились определенного успеха, используя шаблон MVP для вновь добавленных страниц, но исследуем среду MS MVC, чтобы посмотреть, дает ли она нам какое-либо преимущество перед MVP. Важно отметить, что мы бы хотели, чтобы новая работа MVC была в C #, а унаследованное приложение - в VB. Мы рассмотрели эту запись в блоге, которая в основном достигает того, чего мы хотим, но не позволяет нам кодировать на C #. Кроме того, есть несколько записей в блоге о разделении одного веб-приложения на несколько проектов, которые выглядят полезными ( здесь )

Вопрос

Можете вы создать работающий прототип, состоящий из одного веб-приложения, состоящего из двух проектов (проект VB ASP.NET по умолчанию и проект C # MVC по умолчанию), и заставить их прекрасно работать вместе. Я не смог сделать это успешно (я думаю, из-за проблем маршрутизации). Если бы вы могли, я бы хотел увидеть ваши файлы web.config и global.asax.

Ответы [ 2 ]

2 голосов
/ 07 января 2009

Приложение MVC по умолчанию содержит два важных фрагмента кода в корне проекта, и они также должны существовать в корне вашего приложения:

  1. Global.asax - код, который задает весь маршрут.
  2. Default.aspx - код запускает MvcHttpHandler и запускает вас по маршрутам MVC

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

0 голосов
/ 07 января 2009

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

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