Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / PageHandlerFactory.cs / 4 / 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; } } } // 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*/, true /*noAssert*/) 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
- AsyncPostBackTrigger.cs
- CodeActivityMetadata.cs
- EventDescriptor.cs
- embossbitmapeffect.cs
- QueryOperationResponseOfT.cs
- XmlComment.cs
- XslTransformFileEditor.cs
- ControlCommandSet.cs
- DependencyPropertyHelper.cs
- CollaborationHelperFunctions.cs
- Reference.cs
- ImpersonateTokenRef.cs
- PrintPageEvent.cs
- TextAutomationPeer.cs
- XmlQualifiedName.cs
- CollaborationHelperFunctions.cs
- LineProperties.cs
- ServiceRouteHandler.cs
- InputMethod.cs
- AnnotationHelper.cs
- MimeTypeAttribute.cs
- SqlDataReaderSmi.cs
- SafeThreadHandle.cs
- Identifier.cs
- FlowDocumentPage.cs
- WsdlInspector.cs
- Timer.cs
- CaseKeyBox.xaml.cs
- EventLogInformation.cs
- CommandTreeTypeHelper.cs
- ServiceModelActivity.cs
- MatrixTransform3D.cs
- PresentationSource.cs
- ObjectIDGenerator.cs
- ThemeDictionaryExtension.cs
- DataRow.cs
- entitydatasourceentitysetnameconverter.cs
- ProfessionalColorTable.cs
- Path.cs
- httpserverutility.cs
- xmlformatgeneratorstatics.cs
- GenericTextProperties.cs
- NonParentingControl.cs
- SemaphoreFullException.cs
- DetailsViewPagerRow.cs
- RouteItem.cs
- GraphicsContainer.cs
- DecimalAnimationBase.cs
- XamlStream.cs
- PropertyConverter.cs
- ZoneButton.cs
- ChainOfResponsibility.cs
- SiteMapProvider.cs
- OleDbRowUpdatedEvent.cs
- SynchronizedDispatch.cs
- TrackBarRenderer.cs
- XmlComment.cs
- CellNormalizer.cs
- DataSourceSelectArguments.cs
- precedingquery.cs
- ActivitySurrogate.cs
- QueryStringConverter.cs
- PersonalizationProviderCollection.cs
- StringReader.cs
- TemplateXamlParser.cs
- odbcmetadatafactory.cs
- LoadedOrUnloadedOperation.cs
- XmlSchemaComplexContentRestriction.cs
- TemplatedAdorner.cs
- ResourcePart.cs
- DataSourceXmlTextReader.cs
- QilTernary.cs
- Win32KeyboardDevice.cs
- ImageSource.cs
- HitTestWithGeometryDrawingContextWalker.cs
- SizeAnimationBase.cs
- DesignSurfaceCollection.cs
- HtmlDocument.cs
- ColumnMapTranslator.cs
- LogicalTreeHelper.cs
- PageCatalogPart.cs
- RoleManagerSection.cs
- BaseValidatorDesigner.cs
- sqlser.cs
- FrameworkTemplate.cs
- SparseMemoryStream.cs
- WebUtil.cs
- AspNetHostingPermission.cs
- HttpApplicationStateWrapper.cs
- configsystem.cs
- DataGridRow.cs
- PointAnimationClockResource.cs
- DecimalFormatter.cs
- InheritanceAttribute.cs
- SafeSecurityHandles.cs
- NameTable.cs
- ConfigurationStrings.cs
- SystemInformation.cs
- DateTimeParse.cs
- RectValueSerializer.cs