private static void Create(string rootFolder, IServiceProvider serviceProvider, bool skipCrawl = true, bool skipPrecompile = true) { _Instance = new WebApplicationProxy(rootFolder, skipCrawl, skipPrecompile); _ServiceProvider = serviceProvider; ReadWebConfig(); InjectTestValuesIntoHttpRuntime(); _hostingEnvironment = new HostingEnvironmentWrapper(); _DummyRegisteredObject = new DummyRegisteredObject(); HostingEnvironment.RegisterObject(_DummyRegisteredObject); SubstituteDummyHttpContext("/"); _Instance.InitializeInternal(); }
private static void AddMasterPage(Page myPage) { if (string.IsNullOrEmpty(myPage.MasterPageFile)) { return; } var master = WebApplicationProxy.GetPageByLocation(myPage.MasterPageFile) as MasterPage; var masterField = typeof(Page).GetField("_master", BindingFlags.Instance | BindingFlags.NonPublic); masterField.SetValue(myPage, master); // Initialize the rest of the junk on page for the Master if (myPage.HasControls()) { myPage.Controls.Clear(); } var contentTemplates = ((Page)myPage).get_ContentTemplateCollection(); master.SetContentTemplates(contentTemplates); master.SetOwnerControl((Page)myPage); master.InitializeAsUserControl(myPage.Page); myPage.Controls.Add(master); }