использовать главную страницу веб-формы в качестве главной страницы для программных представлений ASP.Net MVC программно - PullRequest
9 голосов
/ 19 декабря 2011

У нас есть работающее решение, содержащее множество web forms приложений с одной и той же главной страницей, мы создали проект библиотеки классов для главной страницы и ее элементов управления и ссылаемся на него как dll внутри каждого приложения веб-формы и назначаем главную страницу программно

Теперь мы добавим два новых приложения в наше решение, но мы решили использовать ASP.Net MVC 3 для создания этих новых приложений.

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

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

Ответы [ 3 ]

3 голосов
/ 27 декабря 2011

Просмотрите эти статьи, чтобы получить обзор о смешивании веб-форм с MVC:

Еще один интересный проект - Zeus , когда речь идет о смешанном решении Webforms / MVC. Он содержит помощников для использования HtmlHelper и UrlHelper на страницах веб-формы.

1 голос
/ 31 декабря 2011

Амир, я загрузил рабочий образец на здесь . Шаги,

1) Загрузил и преобразовал пример приложения из здесь .

2) Добавьте приложение MVC 3 в этом решении и добавьте ссылку на библиотеку классов вышеупомянутого решения.

3) Укажите MasterPage в представлении MVC (либо в представлении MasterPageFile="~/MasterPageDir/MasterPage.master", либо в возврате контроллера View("Index",masterName: MasterPageVirtualPathProvider.MasterPageFileLocation);).

4) Поместите эти строки в global.asax.

MasterPageVirtualPathProvider vpp = new MasterPageVirtualPathProvider();
HostingEnvironment.RegisterVirtualPathProvider(vpp);
1 голос
/ 29 декабря 2011

Если вы действительно хотите двигаться вперед по маршруту MVC, то вам, вероятно, стоит потратить некоторое время на преобразование вашей главной страницы в макет.Все остальное будет взломать / обойти.

...