Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- UndoEngine.cs
- GeneralTransform2DTo3D.cs
- FontFamilyIdentifier.cs
- BuildResult.cs
- PageClientProxyGenerator.cs
- ToolStripItemTextRenderEventArgs.cs
- CompilerGlobalScopeAttribute.cs
- Literal.cs
- UniformGrid.cs
- XAMLParseException.cs
- WSDualHttpSecurityMode.cs
- ModuleElement.cs
- PopupControlService.cs
- HttpDebugHandler.cs
- MimePart.cs
- Documentation.cs
- Types.cs
- CustomErrorCollection.cs
- HttpServerVarsCollection.cs
- GridPatternIdentifiers.cs
- FormView.cs
- ImagingCache.cs
- ComplexBindingPropertiesAttribute.cs
- InfoCardCryptoHelper.cs
- BitStream.cs
- Typeface.cs
- Message.cs
- ValueProviderWrapper.cs
- RadioButtonList.cs
- DataGridTextBox.cs
- SingleTagSectionHandler.cs
- MulticastIPAddressInformationCollection.cs
- MenuEventArgs.cs
- SystemParameters.cs
- MarkupExtensionParser.cs
- SoapEnumAttribute.cs
- TypedDataSourceCodeGenerator.cs
- StructuralCache.cs
- Animatable.cs
- DeploymentSection.cs
- XPathDocument.cs
- DataColumnPropertyDescriptor.cs
- BaseAddressElement.cs
- FileUtil.cs
- PrimitiveType.cs
- TreeNodeBinding.cs
- ContentOperations.cs
- SyndicationItem.cs
- XmlSchemaImport.cs
- Number.cs
- ManagementNamedValueCollection.cs
- SessionStateSection.cs
- SelectorAutomationPeer.cs
- ContextQuery.cs
- BodyWriter.cs
- ControlEvent.cs
- DbParameterCollectionHelper.cs
- DataGridViewRow.cs
- HijriCalendar.cs
- OuterGlowBitmapEffect.cs
- DesignerToolStripControlHost.cs
- FilterableData.cs
- FileEnumerator.cs
- DragDrop.cs
- HelpProvider.cs
- MethodAccessException.cs
- SqlUserDefinedTypeAttribute.cs
- PropertyConverter.cs
- PropertyPathWorker.cs
- SimpleParser.cs
- FrameworkElementFactory.cs
- ConnectionInterfaceCollection.cs
- HttpCacheVary.cs
- DBDataPermission.cs
- TextChange.cs
- TableLayoutSettings.cs
- CommonRemoteMemoryBlock.cs
- UIPermission.cs
- AutoResetEvent.cs
- ApplicationInterop.cs
- DateTimeFormatInfo.cs
- FlatButtonAppearance.cs
- CookieProtection.cs
- MessageSmuggler.cs
- BaseTreeIterator.cs
- SortExpressionBuilder.cs
- PropertyTab.cs
- RevocationPoint.cs
- XpsFilter.cs
- ResolveNameEventArgs.cs
- MDIControlStrip.cs
- PanelDesigner.cs
- VScrollBar.cs
- CanonicalXml.cs
- BooleanExpr.cs
- DataContractSet.cs
- odbcmetadatafactory.cs
- ColumnResizeAdorner.cs
- AppSettingsReader.cs
- InstanceCollisionException.cs