Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / PageHandlerFactory.cs / 3 / 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. //------------------------------------------------------------------------------ //// 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Token.cs
- CapacityStreamGeometryContext.cs
- SqlDataSourceSummaryPanel.cs
- NameValueFileSectionHandler.cs
- Screen.cs
- Stack.cs
- ImmutableCommunicationTimeouts.cs
- JoinTreeNode.cs
- OutputCacheSection.cs
- IndividualDeviceConfig.cs
- DataGridViewCellPaintingEventArgs.cs
- ErasingStroke.cs
- DataGridRowEventArgs.cs
- MemoryMappedView.cs
- MimeBasePart.cs
- ClientSession.cs
- TreeNode.cs
- TypeDelegator.cs
- documentsequencetextcontainer.cs
- XmlSchemaSimpleTypeRestriction.cs
- InputChannel.cs
- DataGridViewAccessibleObject.cs
- ELinqQueryState.cs
- XsltLibrary.cs
- FileStream.cs
- DetailsViewPagerRow.cs
- UnmanagedBitmapWrapper.cs
- IntegerValidator.cs
- ByteStorage.cs
- TimelineClockCollection.cs
- TableParagraph.cs
- Formatter.cs
- SortAction.cs
- MetadataSerializer.cs
- HttpServerUtilityWrapper.cs
- EnterpriseServicesHelper.cs
- SymmetricAlgorithm.cs
- GcSettings.cs
- Mapping.cs
- MsmqTransportReceiveParameters.cs
- VirtualPathUtility.cs
- ByteStack.cs
- XsdValidatingReader.cs
- BackStopAuthenticationModule.cs
- DataGridLinkButton.cs
- safemediahandle.cs
- Pair.cs
- ValidationSummary.cs
- _AutoWebProxyScriptHelper.cs
- TransformerInfo.cs
- uribuilder.cs
- WindowsGraphics.cs
- GradientBrush.cs
- ComplexPropertyEntry.cs
- HttpGetProtocolImporter.cs
- InlineObject.cs
- HttpListenerPrefixCollection.cs
- StorageModelBuildProvider.cs
- InternalDispatchObject.cs
- FixedSOMFixedBlock.cs
- ShapingWorkspace.cs
- QilIterator.cs
- DataGridViewTextBoxEditingControl.cs
- QueryAccessibilityHelpEvent.cs
- TextEditorSpelling.cs
- MembershipUser.cs
- SaveFileDialogDesigner.cs
- CollectionContainer.cs
- ConstructorBuilder.cs
- HideDisabledControlAdapter.cs
- PrintingPermissionAttribute.cs
- StringTraceRecord.cs
- OutOfMemoryException.cs
- SkewTransform.cs
- IOException.cs
- EntityDataSourceContextCreatingEventArgs.cs
- TagPrefixAttribute.cs
- PictureBox.cs
- SemaphoreSecurity.cs
- ActiveDocumentEvent.cs
- ScrollBarRenderer.cs
- TemplateColumn.cs
- SchemaTypeEmitter.cs
- UnmanagedMemoryStream.cs
- ExceptionNotification.cs
- ProviderMetadataCachedInformation.cs
- AssertValidation.cs
- SqlError.cs
- ThreadInterruptedException.cs
- ToolZone.cs
- ResourceIDHelper.cs
- BamlTreeUpdater.cs
- EmulateRecognizeCompletedEventArgs.cs
- DbConnectionFactory.cs
- x509store.cs
- SyncMethodInvoker.cs
- WeakReferenceList.cs
- ApplicationFileParser.cs
- LocalizationParserHooks.cs
- HtmlHistory.cs