Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / PageHandlerFactory.cs / 1305376 / 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*/) as Page; if (page == null) return null; page.TemplateControlVirtualPath = virtualPath; return page; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Parser.cs
- HttpWebRequest.cs
- ExtensibleClassFactory.cs
- DirectionalLight.cs
- EncodingConverter.cs
- EncoderFallback.cs
- TrackingStringDictionary.cs
- RefExpr.cs
- OleDbInfoMessageEvent.cs
- ControlDesigner.cs
- AlternationConverter.cs
- IntellisenseTextBox.cs
- BaseTreeIterator.cs
- EntityDataSourceWrapperCollection.cs
- ExtensionQuery.cs
- ScriptBehaviorDescriptor.cs
- XsltArgumentList.cs
- TagNameToTypeMapper.cs
- ConvertEvent.cs
- TextServicesCompartment.cs
- CopyCodeAction.cs
- DrawingDrawingContext.cs
- FontStyleConverter.cs
- ThemeableAttribute.cs
- OverlappedAsyncResult.cs
- LocationReference.cs
- ellipse.cs
- EventEntry.cs
- AttributeAction.cs
- WebProxyScriptElement.cs
- DurationConverter.cs
- WebPartVerbCollection.cs
- XsltException.cs
- TcpStreams.cs
- SHA512Managed.cs
- DragDeltaEventArgs.cs
- TextProperties.cs
- ParameterCollection.cs
- TreeViewImageIndexConverter.cs
- TextTreeRootNode.cs
- CryptoConfig.cs
- EntityContainerEntitySet.cs
- EditorPartCollection.cs
- XslTransformFileEditor.cs
- DataSetMappper.cs
- AssociationTypeEmitter.cs
- ReturnValue.cs
- MsmqIntegrationBindingElement.cs
- TokenBasedSet.cs
- MsmqDiagnostics.cs
- XXXInfos.cs
- TextRange.cs
- PermissionSetEnumerator.cs
- ClientProxyGenerator.cs
- LayoutManager.cs
- ActivityExecutionFilter.cs
- dsa.cs
- ConfigurationException.cs
- DataException.cs
- XsltSettings.cs
- CollectionViewGroup.cs
- DbDataRecord.cs
- ConfigurationSection.cs
- AxHost.cs
- UInt16.cs
- UIElement.cs
- XmlAnyElementAttributes.cs
- ContainerUtilities.cs
- _AutoWebProxyScriptHelper.cs
- Scalars.cs
- BinaryObjectReader.cs
- CodeDOMProvider.cs
- MILUtilities.cs
- Invariant.cs
- RealizationContext.cs
- EffectiveValueEntry.cs
- RC2CryptoServiceProvider.cs
- TemplateInstanceAttribute.cs
- ValidationEventArgs.cs
- Interlocked.cs
- MessagingDescriptionAttribute.cs
- UnsafeNativeMethodsMilCoreApi.cs
- documentation.cs
- DataGridViewToolTip.cs
- Animatable.cs
- XmlChildNodes.cs
- XmlParserContext.cs
- DataGridViewCellParsingEventArgs.cs
- XmlDataDocument.cs
- NamedObject.cs
- X509ChainPolicy.cs
- TextElementEditingBehaviorAttribute.cs
- ColumnMapCopier.cs
- InvokeProviderWrapper.cs
- ObjectDataSource.cs
- RegexReplacement.cs
- MetaModel.cs
- RegexBoyerMoore.cs
- X509ClientCertificateCredentialsElement.cs
- SpecialFolderEnumConverter.cs