Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Routing / UrlRoutingHandler.cs / 1305376 / UrlRoutingHandler.cs
namespace System.Web.Routing { using System; using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.Web; using System.Runtime.CompilerServices; [TypeForwardedFrom("System.Web.Routing, Version=3.5.0.0, Culture=Neutral, PublicKeyToken=31bf3856ad364e35")] public abstract class UrlRoutingHandler : IHttpHandler { private RouteCollection _routeCollection; protected virtual bool IsReusable { get { return false; } } [SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "This needs to be settable for unit tests.")] public RouteCollection RouteCollection { get { if (_routeCollection == null) { _routeCollection = RouteTable.Routes; } return _routeCollection; } set { _routeCollection = value; } } protected virtual void ProcessRequest(HttpContext httpContext) { ProcessRequest(new HttpContextWrapper(httpContext)); } protected virtual void ProcessRequest(HttpContextBase httpContext) { RouteData routeData = RouteCollection.GetRouteData(httpContext); if (routeData == null) { throw new HttpException(404, SR.GetString(SR.UrlRoutingHandler_NoRouteMatches)); } IRouteHandler routeHandler = routeData.RouteHandler; if (routeHandler == null) { throw new InvalidOperationException(SR.GetString(SR.UrlRoutingModule_NoRouteHandler)); } RequestContext requestContext = new RequestContext(httpContext, routeData); IHttpHandler httpHandler = routeHandler.GetHttpHandler(requestContext); if (httpHandler == null) { throw new InvalidOperationException( String.Format( CultureInfo.CurrentUICulture, SR.GetString(SR.UrlRoutingModule_NoHttpHandler), routeHandler.GetType())); } VerifyAndProcessRequest(httpHandler, httpContext); } protected abstract void VerifyAndProcessRequest(IHttpHandler httpHandler, HttpContextBase httpContext); #region IHttpHandler Members bool IHttpHandler.IsReusable { get { return IsReusable; } } void IHttpHandler.ProcessRequest(HttpContext context) { ProcessRequest(context); } #endregion } } // 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
- COM2Enum.cs
- FileDialogPermission.cs
- DelegatedStream.cs
- DelegateTypeInfo.cs
- RoleGroupCollection.cs
- ReadOnlyHierarchicalDataSourceView.cs
- SecurityTokenProviderContainer.cs
- Geometry.cs
- RoleManagerSection.cs
- DataGridViewCheckBoxColumn.cs
- TraceSection.cs
- CollectionChangeEventArgs.cs
- VirtualizingPanel.cs
- ZoneMembershipCondition.cs
- WebPartEventArgs.cs
- SqlHelper.cs
- TcpWorkerProcess.cs
- StringHandle.cs
- path.cs
- NamespaceDisplay.xaml.cs
- _SecureChannel.cs
- CodeCommentStatement.cs
- EncoderReplacementFallback.cs
- ShaperBuffers.cs
- Socket.cs
- rsa.cs
- NameValueFileSectionHandler.cs
- InvokePattern.cs
- HandleRef.cs
- Binding.cs
- DeleteMemberBinder.cs
- InvalidComObjectException.cs
- DelegateOutArgument.cs
- WebPartManager.cs
- Encoder.cs
- SqlUdtInfo.cs
- BlockUIContainer.cs
- CompositionAdorner.cs
- FrameworkElement.cs
- CodeCommentStatement.cs
- CachedTypeface.cs
- XPathDescendantIterator.cs
- QueryComponents.cs
- HttpCacheVaryByContentEncodings.cs
- SQLInt16.cs
- Switch.cs
- ListViewAutomationPeer.cs
- ZipIOCentralDirectoryBlock.cs
- FixedDocumentPaginator.cs
- EdmProviderManifest.cs
- InvalidProgramException.cs
- ParameterCollectionEditorForm.cs
- DataSourceProvider.cs
- DataGridViewAdvancedBorderStyle.cs
- FontStyles.cs
- PolicyAssertionCollection.cs
- VisualBrush.cs
- ProcessThreadCollection.cs
- RegexCapture.cs
- CheckedListBox.cs
- DesigntimeLicenseContextSerializer.cs
- ColorIndependentAnimationStorage.cs
- IconHelper.cs
- InertiaExpansionBehavior.cs
- Int16AnimationBase.cs
- HttpRequestMessageProperty.cs
- SessionIDManager.cs
- HyperLink.cs
- XamlToRtfParser.cs
- ExpressionLink.cs
- control.ime.cs
- SelectionList.cs
- CodeAccessPermission.cs
- SHA256.cs
- FileChangeNotifier.cs
- DefaultAssemblyResolver.cs
- FixedTextSelectionProcessor.cs
- OleDbDataReader.cs
- DivideByZeroException.cs
- XmlCodeExporter.cs
- PinnedBufferMemoryStream.cs
- NameTable.cs
- RtfControlWordInfo.cs
- MethodAccessException.cs
- OdbcReferenceCollection.cs
- BitmapEffectOutputConnector.cs
- ItemList.cs
- CachedPathData.cs
- ObjectQuery.cs
- ControlTemplate.cs
- FormatConvertedBitmap.cs
- ListManagerBindingsCollection.cs
- XmlSchemaGroupRef.cs
- SpecialFolderEnumConverter.cs
- PrivilegeNotHeldException.cs
- _SSPISessionCache.cs
- DataExpression.cs
- SelectionItemPatternIdentifiers.cs
- ControlCachePolicy.cs
- UnhandledExceptionEventArgs.cs