Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / PageHandlerFactory.cs / 2 / PageHandlerFactory.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Handler Factory implementation for Page files * * Copyright (c) 1999 Microsoft Corporation */ namespace System.Web.UI { using System.Runtime.Serialization.Formatters; using System.IO; using System.Security.Permissions; using System.Web.Compilation; using System.Web.Util; using Debug=System.Web.Util.Debug; /* * Handler Factory implementation for ASP.NET files */ [PermissionSet(SecurityAction.LinkDemand, Unrestricted = true)] [PermissionSet(SecurityAction.InheritanceDemand, Unrestricted=true)] public class PageHandlerFactory : IHttpHandlerFactory2 { private bool _isInheritedInstance; protected internal PageHandlerFactory() { // Check whether this is the exact PageHandlerFactory, or a derived class _isInheritedInstance = (GetType() != typeof(PageHandlerFactory)); } public virtual IHttpHandler GetHandler(HttpContext context, string requestType, string virtualPath, string path) { Debug.Trace("PageHandlerFactory", "PageHandlerFactory: " + virtualPath); // This should never get called in ISAPI mode but currently is in integrated mode // Debug.Assert(false); return GetHandlerHelper(context, requestType, VirtualPath.CreateNonRelative(virtualPath), path); } IHttpHandler IHttpHandlerFactory2.GetHandler(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath) { // If it's a derived class, we must call the old (less efficient) GetHandler, in // case it was overriden if (_isInheritedInstance) { return GetHandler(context, requestType, virtualPath.VirtualPathString, physicalPath); } return GetHandlerHelper(context, requestType, virtualPath, physicalPath); } public virtual void ReleaseHandler(IHttpHandler handler) { } private IHttpHandler GetHandlerHelper(HttpContext context, string requestType, VirtualPath virtualPath, string physicalPath) { Page page = BuildManager.CreateInstanceFromVirtualPath( virtualPath, typeof(Page), context, true /*allowCrossApp*/, true /*noAssert*/) as Page; if (page == null) return null; page.TemplateControlVirtualPath = virtualPath; return page; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XamlLoadErrorInfo.cs
- ContentIterators.cs
- FormatterServicesNoSerializableCheck.cs
- BufferCache.cs
- ResXBuildProvider.cs
- UrlMappingsModule.cs
- COAUTHINFO.cs
- TextHintingModeValidation.cs
- FocusTracker.cs
- DependentList.cs
- counter.cs
- IntegerCollectionEditor.cs
- ResXResourceReader.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- AnnouncementInnerClient11.cs
- CryptoHandle.cs
- WindowsTokenRoleProvider.cs
- DefaultObjectMappingItemCollection.cs
- ResXResourceReader.cs
- ThreadPool.cs
- MasterPageCodeDomTreeGenerator.cs
- WaitingCursor.cs
- DataGridItemEventArgs.cs
- IisTraceListener.cs
- ScrollItemPatternIdentifiers.cs
- SerializableTypeCodeDomSerializer.cs
- TableCellCollection.cs
- ThemeDictionaryExtension.cs
- ContextMarshalException.cs
- ObjectResult.cs
- TableLayoutSettings.cs
- UnitySerializationHolder.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- SQLDecimalStorage.cs
- SignatureGenerator.cs
- ContextMenuAutomationPeer.cs
- ParseChildrenAsPropertiesAttribute.cs
- RuntimeArgumentHandle.cs
- InputProcessorProfilesLoader.cs
- MembershipSection.cs
- ServiceOperationWrapper.cs
- KeyValueConfigurationElement.cs
- ConstructorBuilder.cs
- MexHttpsBindingCollectionElement.cs
- SynchronizedDispatch.cs
- NestedContainer.cs
- WmlFormAdapter.cs
- ParsedAttributeCollection.cs
- MachineSettingsSection.cs
- ColorAnimationBase.cs
- SecurityImpersonationBehavior.cs
- PropertiesTab.cs
- XmlNodeChangedEventManager.cs
- MouseBinding.cs
- CharacterHit.cs
- Util.cs
- ImageInfo.cs
- PersistencePipeline.cs
- DataListComponentEditor.cs
- CheckBoxFlatAdapter.cs
- DesignerAdRotatorAdapter.cs
- NonClientArea.cs
- IgnoreFileBuildProvider.cs
- RotateTransform3D.cs
- Int32CollectionConverter.cs
- Collection.cs
- FileFormatException.cs
- Visitors.cs
- EntityCommandCompilationException.cs
- WebBrowserHelper.cs
- InfoCardSymmetricAlgorithm.cs
- CannotUnloadAppDomainException.cs
- XmlSchemaRedefine.cs
- CrossContextChannel.cs
- DbgUtil.cs
- XmlSchemaChoice.cs
- RawStylusInput.cs
- XslCompiledTransform.cs
- DBDataPermissionAttribute.cs
- WebPartDisplayMode.cs
- GPRECT.cs
- CompilerResults.cs
- DataObjectMethodAttribute.cs
- EqualityArray.cs
- RefreshPropertiesAttribute.cs
- RtfFormatStack.cs
- TaskFileService.cs
- Types.cs
- WindowsFormsDesignerOptionService.cs
- ComEventsSink.cs
- DbConnectionPoolIdentity.cs
- ListItemConverter.cs
- PageEventArgs.cs
- Context.cs
- IdentityModelStringsVersion1.cs
- RequestResizeEvent.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- HttpStreamXmlDictionaryReader.cs
- WmpBitmapEncoder.cs
- ScalarConstant.cs