internal void Configure(ClientBuildManager client) { // Add a pending call to make sure our thread doesn't get killed AddPendingCall(); try { _virtualPathProvider = new ClientVirtualPathProvider(); HostingEnvironment.RegisterVirtualPathProviderInternal(_virtualPathProvider); _client = client; // Type description provider required for multitargeting compilation support in VS. if (_client.CBMTypeDescriptionProviderBridge != null) { TargetFrameworkUtil.CBMTypeDescriptionProviderBridge = _client.CBMTypeDescriptionProviderBridge; } // start watching for app domain unloading _onAppDomainUnload = new EventHandler(OnAppDomainUnload); Thread.GetDomain().DomainUnload += _onAppDomainUnload; _buildManager = BuildManager.TheBuildManager; // Listen to appdomain shutdown. HttpRuntime.AppDomainShutdown += new BuildManagerHostUnloadEventHandler(this.OnAppDomainShutdown); } finally { RemovePendingCall(); } }
internal void Configure(ClientBuildManager client) { this.AddPendingCall(); try { this._virtualPathProvider = new ClientVirtualPathProvider(); HostingEnvironment.RegisterVirtualPathProviderInternal(this._virtualPathProvider); this._client = client; if (this._client.CBMTypeDescriptionProviderBridge != null) { TargetFrameworkUtil.CBMTypeDescriptionProviderBridge = this._client.CBMTypeDescriptionProviderBridge; } this._onAppDomainUnload = new EventHandler(this.OnAppDomainUnload); Thread.GetDomain().DomainUnload += this._onAppDomainUnload; this._buildManager = BuildManager.TheBuildManager; HttpRuntime.AppDomainShutdown += new BuildManagerHostUnloadEventHandler(this.OnAppDomainShutdown); } finally { this.RemovePendingCall(); } }