ASP.NET Главная страница в отдельной сборке


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

Есть ли хороший способ, которым я могу это сделать?

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

3 2

3 ответа:

Главные страницы основаны на Usercontrols, поэтому они не могут быть совместно использованы в приложениях.

Тем не менее, у Дэна Уолена есть способ обойти это конкретное ограничение , указанное в его блоге.

Совместное использование главных страниц в приложениях IIS от Dan Wahlin даст вам некоторые идеи..

Также, проверьте эту превосходную статью Скотта Аллена. Вы можете проверить последний раздел в конце на общих главных страницах.

Красивых решений этой проблемы не существует.

Что вы можете сделать, это поместить его в отдельный проект веб-приложения и предварительно скомпилировать его. Затем возьмите предварительно скомпилированные библиотеки DLL и объедините их в единую библиотеку dll, на которую вы можете ссылаться в своем приложении.

Фактическая главная страница, на которую вы ссылаетесь, будет иметь такое имя класса: MyMasterPage_aweknk, поэтому посмотрите его в reflector. Класс, который выглядит как "MyMasterPage", на самом деле является просто кодом.

Это действительно отвратительно., но это то, что мы сделали, чтобы повторно использовать пользовательские элементы управления в нескольких приложениях.