Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UrlMappingsModule.cs / 1 / UrlMappingsModule.cs
// Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Web { using System; using System.Web; using System.Web.Util; using System.Web.Configuration; // // Module that implements the UrlMappings functionality // on IIS 7 in integrated mode, this takes the place of // the UrlMappings execution step and is listed insealed internal class UrlMappingsModule : IHttpModule { internal UrlMappingsModule() {} public void Init(HttpApplication application) { bool urlMappingsEnabled = false; UrlMappingsSection urlMappings = RuntimeConfig.GetConfig().UrlMappings; urlMappingsEnabled = urlMappings.IsEnabled && ( urlMappings.UrlMappings.Count > 0 ); if (urlMappingsEnabled) { application.BeginRequest += new EventHandler(OnEnter); } } public void Dispose() {} internal void OnEnter(Object source, EventArgs eventArgs) { HttpApplication app = (HttpApplication) source; UrlMappingsSection urlMappings = RuntimeConfig.GetAppConfig().UrlMappings; // First string mappedUrl = urlMappings.HttpResolveMapping(app.Request.RawUrl); // Check Path if not found if (mappedUrl == null) mappedUrl = urlMappings.HttpResolveMapping(app.Request.Path); if (!string.IsNullOrEmpty(mappedUrl)) //&& IsDifferentFromCurrentUrl(mappedUrl, app.Context)) app.Context.RewritePath(mappedUrl, false); } // private static bool IsDifferentFromCurrentUrl(string url, HttpContext context) // { // Uri absUri; // if (!Uri.TryCreate(url, UriKind.Absolute, out absUri)) // { // if (url.StartsWith("~/")) // url = UrlPath.Combine(context.Request.Path, url.Substring(2)); // if (!Uri.TryCreate(context.Request.Url, url, out absUri)) // return true; // } // return Uri.Compare(absUri, context.Request.Url, UriComponents.AbsoluteUri, UriFormat.UriEscaped, StringComparison.OrdinalIgnoreCase) != 0; // } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- login.cs
- CharEnumerator.cs
- StaticSiteMapProvider.cs
- XPathCompileException.cs
- SafeNativeMethods.cs
- DataGridViewToolTip.cs
- Single.cs
- XmlSchemaGroupRef.cs
- WebPartConnection.cs
- PermissionToken.cs
- SetState.cs
- SmuggledIUnknown.cs
- Span.cs
- OraclePermissionAttribute.cs
- BinaryMessageEncodingBindingElement.cs
- RadioButtonFlatAdapter.cs
- ObjectConverter.cs
- XslCompiledTransform.cs
- XmlLinkedNode.cs
- DisableDpiAwarenessAttribute.cs
- AssemblySettingAttributes.cs
- XmlCountingReader.cs
- LoginCancelEventArgs.cs
- NamespaceTable.cs
- Documentation.cs
- PatternMatcher.cs
- ErrorWebPart.cs
- BitmapEncoder.cs
- HttpCacheParams.cs
- SignatureDescription.cs
- EntityCollection.cs
- DateTimeOffset.cs
- CompareValidator.cs
- RawStylusActions.cs
- QueryContinueDragEvent.cs
- NetworkCredential.cs
- MarkedHighlightComponent.cs
- RequiredFieldValidator.cs
- TimeSpanMinutesConverter.cs
- ObjectReferenceStack.cs
- InstanceLockLostException.cs
- NonClientArea.cs
- TraceLog.cs
- TextTreeInsertUndoUnit.cs
- FileSystemInfo.cs
- XmlSchemaAttribute.cs
- SqlInternalConnection.cs
- ToggleProviderWrapper.cs
- PersonalizationDictionary.cs
- XmlWriter.cs
- HTTPRemotingHandler.cs
- PlanCompilerUtil.cs
- PieceDirectory.cs
- ListBindingHelper.cs
- ErrorReporting.cs
- ListViewVirtualItemsSelectionRangeChangedEvent.cs
- XmlIncludeAttribute.cs
- WindowsRebar.cs
- MinMaxParagraphWidth.cs
- UnsupportedPolicyOptionsException.cs
- OracleException.cs
- IOThreadTimer.cs
- httpserverutility.cs
- NumberSubstitution.cs
- TreeNodeBindingDepthConverter.cs
- ReceiveActivityValidator.cs
- AutomationElement.cs
- ListControl.cs
- DiffuseMaterial.cs
- ContentElement.cs
- SoapIncludeAttribute.cs
- ViewCellRelation.cs
- ScrollChangedEventArgs.cs
- SQLByte.cs
- AttributeQuery.cs
- FileDataSourceCache.cs
- DoWorkEventArgs.cs
- ToolTip.cs
- PartBasedPackageProperties.cs
- TextRunCacheImp.cs
- DateTimeOffsetStorage.cs
- PageContentAsyncResult.cs
- QilInvokeEarlyBound.cs
- NumberAction.cs
- SystemWebSectionGroup.cs
- QueryConverter.cs
- AuthenticationService.cs
- Point3DCollection.cs
- StringCollection.cs
- ResourceKey.cs
- XmlSchemaAll.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- AliasedSlot.cs
- Pen.cs
- ColumnTypeConverter.cs
- SafeBitVector32.cs
- securestring.cs
- AuthenticationService.cs
- SmiRecordBuffer.cs
- ElementMarkupObject.cs