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
- NumberSubstitution.cs
- DataGridPagerStyle.cs
- ElapsedEventArgs.cs
- DrawingGroup.cs
- KeyedCollection.cs
- XmlSchemaInferenceException.cs
- FontWeightConverter.cs
- TagPrefixAttribute.cs
- invalidudtexception.cs
- HtmlControl.cs
- BinaryQueryOperator.cs
- OrderedDictionaryStateHelper.cs
- mil_sdk_version.cs
- SoapFormatter.cs
- InputLangChangeRequestEvent.cs
- SoapObjectReader.cs
- BaseTemplateBuildProvider.cs
- PersonalizationDictionary.cs
- PrimitiveList.cs
- DataTableReader.cs
- UICuesEvent.cs
- XmlAttributeCollection.cs
- VideoDrawing.cs
- PolicyFactory.cs
- Convert.cs
- DataGridRelationshipRow.cs
- Privilege.cs
- ScrollItemProviderWrapper.cs
- AutomationAttributeInfo.cs
- Encoder.cs
- HttpDebugHandler.cs
- TypeToken.cs
- ThreadAbortException.cs
- ObjectCloneHelper.cs
- MessagePropertyVariants.cs
- RelationshipEndMember.cs
- MessageBox.cs
- BindingMemberInfo.cs
- CompositeFontFamily.cs
- PublisherMembershipCondition.cs
- FileDialogCustomPlace.cs
- RelationshipConverter.cs
- errorpatternmatcher.cs
- DataView.cs
- Point.cs
- ScrollData.cs
- SmiEventStream.cs
- WebBaseEventKeyComparer.cs
- BindingList.cs
- HashLookup.cs
- Empty.cs
- WeakEventTable.cs
- KeyGesture.cs
- CaseInsensitiveOrdinalStringComparer.cs
- DbConnectionPoolOptions.cs
- JsonUriDataContract.cs
- ContainsSearchOperator.cs
- ToolStripCodeDomSerializer.cs
- ValidatingCollection.cs
- ByteStack.cs
- WorkflowApplicationEventArgs.cs
- ToolStripSettings.cs
- TraceListener.cs
- Merger.cs
- ExpressionLink.cs
- DataListComponentEditor.cs
- ReachSerializationUtils.cs
- AddInAttribute.cs
- SafeNativeMethods.cs
- DataGridRelationshipRow.cs
- TableCell.cs
- Registry.cs
- DockProviderWrapper.cs
- CodeCastExpression.cs
- DataGridViewControlCollection.cs
- ComContractElement.cs
- ActionItem.cs
- EntityDataReader.cs
- GlyphRunDrawing.cs
- XmlDocumentFragment.cs
- CodeAccessPermission.cs
- Pointer.cs
- SrgsRule.cs
- TypeLibConverter.cs
- LateBoundChannelParameterCollection.cs
- TypefaceMap.cs
- XpsDigitalSignature.cs
- KeyTime.cs
- StateWorkerRequest.cs
- ScriptControl.cs
- StringBuilder.cs
- OdbcEnvironmentHandle.cs
- TypeToken.cs
- PriorityItem.cs
- ViewManager.cs
- MD5HashHelper.cs
- XamlInt32CollectionSerializer.cs
- ProfileService.cs
- DataServiceQueryProvider.cs
- WorkflowTransactionService.cs