Получить все aspx-файлы, используя определенную мастер-страницу - PullRequest
0 голосов
/ 14 марта 2012

Я пытаюсь получить путь для всех .aspx-файлов, которые имеют определенное значение MasterPageFile.

Допустим, у меня есть aspx-файл с именем "hi.aspx" с MasterPageFile = "hello.Master" в директиве страницы.Я хочу получить значение из свойства MasterPageFile с помощью отражения, используя такой метод:

GetAllASpxFilesUsingMasterFile("~/hello.Master"); 
> hi.aspx

Проблема, которую я использую:

var type = BuildManager.GetCompiledType(path)
Activator.CreateInstance(type)

, заключается в том, что свойство MasterPageFileноль .. идеи?

1 Ответ

1 голос
/ 14 марта 2012

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

Чтобы запустить процесс реального жизненного цикла страницы, вам следует вызвать метод ProcessRequest (), но это вообще не рекомендуется.

        Type type = BuildManager.GetCompiledType("~/Default.aspx");

        Page myPage = (Page)Activator.CreateInstance(type);

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