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
- XamlInt32CollectionSerializer.cs
- TabPanel.cs
- TrackingProfileCache.cs
- StrokeNodeOperations2.cs
- ToolZone.cs
- RadialGradientBrush.cs
- JsonCollectionDataContract.cs
- CompilationUtil.cs
- TemplateInstanceAttribute.cs
- Parameter.cs
- StringCollection.cs
- SimpleExpression.cs
- RectangleHotSpot.cs
- BlockCollection.cs
- Trustee.cs
- unsafenativemethodstextservices.cs
- ExpressionEditorAttribute.cs
- SystemColors.cs
- GlobalProxySelection.cs
- LicenseException.cs
- NativeMethods.cs
- UpdateCompiler.cs
- DataGridDetailsPresenterAutomationPeer.cs
- StringWriter.cs
- ZipFileInfo.cs
- _PooledStream.cs
- AffineTransform3D.cs
- SqlDataSourceAdvancedOptionsForm.cs
- TableLayoutCellPaintEventArgs.cs
- WebServiceEnumData.cs
- UmAlQuraCalendar.cs
- ProfilePropertyNameValidator.cs
- SamlAuthorizationDecisionClaimResource.cs
- CounterSampleCalculator.cs
- ComPlusSynchronizationContext.cs
- CreateCardRequest.cs
- WebResourceAttribute.cs
- ListItemConverter.cs
- xsdvalidator.cs
- ContainsRowNumberChecker.cs
- WindowsSysHeader.cs
- EnumType.cs
- RequestCacheManager.cs
- DecimalAnimationUsingKeyFrames.cs
- ClientEventManager.cs
- CategoryList.cs
- DataGridColumnHeadersPresenterAutomationPeer.cs
- Span.cs
- DrawListViewColumnHeaderEventArgs.cs
- TransactionInformation.cs
- Image.cs
- DataPagerCommandEventArgs.cs
- SiteMapProvider.cs
- Int16Converter.cs
- RequestQueue.cs
- ReadOnlyDictionary.cs
- SecurityTokenException.cs
- MimeReturn.cs
- DataControlCommands.cs
- Walker.cs
- JsonServiceDocumentSerializer.cs
- NameValueConfigurationElement.cs
- ReflectionUtil.cs
- WebBrowser.cs
- SchemaAttDef.cs
- ArrayWithOffset.cs
- DataTableExtensions.cs
- TimelineClockCollection.cs
- DashStyle.cs
- FtpWebResponse.cs
- Misc.cs
- ToolStripRendererSwitcher.cs
- storepermission.cs
- Assert.cs
- DefaultSerializationProviderAttribute.cs
- CalendarDesigner.cs
- StructuralCache.cs
- DispatcherProcessingDisabled.cs
- QilStrConcatenator.cs
- DataGridViewCellFormattingEventArgs.cs
- Oid.cs
- SessionKeyExpiredException.cs
- StreamGeometry.cs
- SystemIPInterfaceStatistics.cs
- KeysConverter.cs
- SelectionItemPattern.cs
- TableMethodGenerator.cs
- ErrorEventArgs.cs
- IncrementalReadDecoders.cs
- ApplicationServicesHostFactory.cs
- ExtensibleSyndicationObject.cs
- ISFClipboardData.cs
- TdsRecordBufferSetter.cs
- SerializationInfoEnumerator.cs
- ResourcesGenerator.cs
- VirtualizingStackPanel.cs
- LockRenewalTask.cs
- BindingList.cs
- RoutedEventValueSerializer.cs
- SoapSchemaImporter.cs