Code:
/ 4.0 / 4.0 / 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. //------------------------------------------------------------------------------ //// 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
- SessionStateModule.cs
- XmlReflectionImporter.cs
- AgileSafeNativeMemoryHandle.cs
- basenumberconverter.cs
- ArgumentNullException.cs
- MessagePropertyAttribute.cs
- CharacterString.cs
- DataGridViewCellMouseEventArgs.cs
- ReadOnlyPropertyMetadata.cs
- UnsafePeerToPeerMethods.cs
- LabelEditEvent.cs
- StringInfo.cs
- MatrixCamera.cs
- HintTextConverter.cs
- HttpCookie.cs
- ExtendedProtectionPolicyElement.cs
- GridSplitter.cs
- ListDictionaryInternal.cs
- WorkflowDesignerMessageFilter.cs
- CodeEntryPointMethod.cs
- PropertyKey.cs
- ObjectDataSourceChooseMethodsPanel.cs
- HatchBrush.cs
- EventHandlerList.cs
- CompilerResults.cs
- BookmarkTable.cs
- Viewport2DVisual3D.cs
- CallTemplateAction.cs
- GeometryCollection.cs
- HttpConfigurationContext.cs
- columnmapfactory.cs
- PopupControlService.cs
- AllMembershipCondition.cs
- MergablePropertyAttribute.cs
- Transactions.cs
- grammarelement.cs
- WebPartVerbCollection.cs
- StylusTip.cs
- AlphabeticalEnumConverter.cs
- Internal.cs
- WorkflowPageSetupDialog.cs
- EventPrivateKey.cs
- TextEffect.cs
- DesignTimeXamlWriter.cs
- DependencySource.cs
- SelectManyQueryOperator.cs
- CommonProperties.cs
- NameObjectCollectionBase.cs
- ResolveNextArgumentWorkItem.cs
- DependencyObjectCodeDomSerializer.cs
- JulianCalendar.cs
- XmlResolver.cs
- LocalizedNameDescriptionPair.cs
- ClientData.cs
- XmlSchemaSimpleTypeList.cs
- QilList.cs
- PanelDesigner.cs
- ByteConverter.cs
- Encoding.cs
- DataProtectionSecurityStateEncoder.cs
- AnnotationService.cs
- SamlAdvice.cs
- MailWriter.cs
- EditorReuseAttribute.cs
- ObjectItemCollection.cs
- BufferModeSettings.cs
- XmlHelper.cs
- StylusPlugin.cs
- VerticalConnector.xaml.cs
- rsa.cs
- DBSchemaRow.cs
- LocalizableAttribute.cs
- RuleEngine.cs
- BinaryFormatterWriter.cs
- ContourSegment.cs
- HostingEnvironment.cs
- EdmComplexTypeAttribute.cs
- RC2CryptoServiceProvider.cs
- EntityContainerRelationshipSet.cs
- TemplateAction.cs
- WebAdminConfigurationHelper.cs
- NamedPipeAppDomainProtocolHandler.cs
- QueueProcessor.cs
- SystemNetHelpers.cs
- ReceiveReply.cs
- TheQuery.cs
- EnumerableCollectionView.cs
- SimpleMailWebEventProvider.cs
- CompilerErrorCollection.cs
- SQLDoubleStorage.cs
- _NestedSingleAsyncResult.cs
- SqlGenericUtil.cs
- WebServiceReceive.cs
- CodeChecksumPragma.cs
- SerializationObjectManager.cs
- FormsAuthenticationUser.cs
- EventSinkHelperWriter.cs
- WebPartConnectionCollection.cs
- RequiredFieldValidator.cs
- Int32EqualityComparer.cs