Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / xsp / System / Web / UI / PageHandlerFactory.cs / 1 / 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
- safemediahandle.cs
- DockAndAnchorLayout.cs
- SystemMulticastIPAddressInformation.cs
- QuadraticBezierSegment.cs
- Region.cs
- GroupLabel.cs
- SQLCharsStorage.cs
- ConnectionStringSettingsCollection.cs
- SessionStateUtil.cs
- AnnotationResource.cs
- DiscoveryVersionConverter.cs
- NavigatorInput.cs
- RtfToXamlReader.cs
- TreeView.cs
- XNameConverter.cs
- PropertiesTab.cs
- UpdateEventArgs.cs
- SimpleBitVector32.cs
- NamespaceDisplayAutomationPeer.cs
- XPathParser.cs
- StyleXamlParser.cs
- FtpRequestCacheValidator.cs
- XmlText.cs
- METAHEADER.cs
- FileIOPermission.cs
- TreeNodeBindingCollection.cs
- SchemaNamespaceManager.cs
- ComponentDispatcher.cs
- CreateUserWizardStep.cs
- ClientSettingsSection.cs
- MergePropertyDescriptor.cs
- _SslStream.cs
- ComponentFactoryHelpers.cs
- DescendantQuery.cs
- HashAlgorithm.cs
- StorageFunctionMapping.cs
- CompositeCollectionView.cs
- TextHintingModeValidation.cs
- DoubleAnimationUsingKeyFrames.cs
- ChangeConflicts.cs
- MemberRelationshipService.cs
- RectKeyFrameCollection.cs
- DesignRelation.cs
- RtfToken.cs
- ContextQuery.cs
- RoleServiceManager.cs
- DurationConverter.cs
- Region.cs
- CurrentTimeZone.cs
- COM2ExtendedBrowsingHandler.cs
- CommunicationException.cs
- CachingHintValidation.cs
- MeshGeometry3D.cs
- WsdlImporter.cs
- AnimationTimeline.cs
- MetadataFile.cs
- StrokeNodeEnumerator.cs
- DSACryptoServiceProvider.cs
- webclient.cs
- DocumentCollection.cs
- TextEncodedRawTextWriter.cs
- HttpRuntimeSection.cs
- TextRangeEditTables.cs
- DbCommandDefinition.cs
- IndentedTextWriter.cs
- BaseAsyncResult.cs
- EqualityComparer.cs
- ThreadStaticAttribute.cs
- XmlAttributeCollection.cs
- sqlinternaltransaction.cs
- ToolboxComponentsCreatingEventArgs.cs
- CacheVirtualItemsEvent.cs
- SplitContainerDesigner.cs
- EncryptedPackage.cs
- WinEventTracker.cs
- SendActivity.cs
- DoubleCollectionConverter.cs
- ObjectHandle.cs
- ProgressPage.cs
- TableParagraph.cs
- InputEventArgs.cs
- ProtocolsConfigurationEntry.cs
- WorkflowWebHostingModule.cs
- LinkUtilities.cs
- DNS.cs
- InstanceLockedException.cs
- WebPartTransformerCollection.cs
- SecurityContextTokenCache.cs
- ProviderBase.cs
- ContainerFilterService.cs
- FormattedTextSymbols.cs
- SessionPageStateSection.cs
- HandoffBehavior.cs
- CustomTypeDescriptor.cs
- PointLightBase.cs
- ApplicationDirectory.cs
- LayoutTableCell.cs
- UpdatePanelTriggerCollection.cs
- LabelEditEvent.cs
- IsolatedStorageException.cs