Главная страница ASP.NET в отдельной сборке
-
02-07-2019 - |
Вопрос
У меня есть несколько главных страниц ASP.NET, расположенных в одной сборке.Мне нужно использовать эти главные страницы со страницами веб-формы, расположенными в других сборках, которые имеют ссылку на первую сборку.Кажется, я не могу найти способ сделать это.
Есть ли хороший способ сделать это?
Если красивого решения не существует, мне также хотелось бы услышать о возможных хаках?
Решение
Главные страницы основаны на пользовательских элементах управления, поэтому их нельзя использовать совместно в разных приложениях.
Тем не менее, у Дэна Уолина есть способ обойти это ограничение. указан в его блоге.
Другие советы
Совместное использование главных страниц в приложениях IIS Дэн Уолин подарит вам несколько идей..
Также проверьте это отличная статья Скотт Аллен.Вы можете проверить последний раздел в конце, посвященный совместному использованию главных страниц.
Симпатичных решений этой проблемы не существует.
Что вы можете сделать, так это поместить его в отдельный проект веб-приложения и предварительно скомпилировать.Затем возьмите предварительно скомпилированные библиотеки DLL и объедините их с помощью ILM в одну библиотеку DLL, на которую вы сможете ссылаться в своем приложении.
Фактическая главная страница, на которую вы ссылаетесь, будет иметь такое имя класса:MyMasterPage_aweknk, так что посмотрите его в отражателе.Класс, который выглядит как «MyMasterPage», на самом деле представляет собой всего лишь код программной части.
Это действительно отвратительно, но именно это мы и сделали, чтобы повторно использовать пользовательские элементы управления в нескольких приложениях.