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
- SafeLibraryHandle.cs
- RegexWorker.cs
- DesignTimeParseData.cs
- securestring.cs
- DrawingDrawingContext.cs
- GradientPanel.cs
- PropertyInformation.cs
- WebPartConnectionsConfigureVerb.cs
- CodeSnippetStatement.cs
- RuleAction.cs
- COM2PictureConverter.cs
- FormViewInsertedEventArgs.cs
- OleStrCAMarshaler.cs
- RepeaterItemCollection.cs
- Canvas.cs
- SecurityElement.cs
- Block.cs
- MsmqInputChannelListener.cs
- ListControlDataBindingHandler.cs
- ClientScriptItem.cs
- AspProxy.cs
- InsufficientMemoryException.cs
- SchemaImporterExtension.cs
- CommentEmitter.cs
- EntityClassGenerator.cs
- RowVisual.cs
- ObjectQueryState.cs
- StructuredTypeInfo.cs
- CompilerScopeManager.cs
- Profiler.cs
- ObfuscateAssemblyAttribute.cs
- entityreference_tresulttype.cs
- AssertHelper.cs
- Calendar.cs
- EdmEntityTypeAttribute.cs
- ClientUtils.cs
- CqlParser.cs
- TimeoutStream.cs
- OdbcDataAdapter.cs
- BoundColumn.cs
- BamlRecordReader.cs
- COM2FontConverter.cs
- COM2ExtendedUITypeEditor.cs
- PatternMatcher.cs
- ConstraintStruct.cs
- CachedResourceDictionaryExtension.cs
- DataGridViewTopLeftHeaderCell.cs
- EdmError.cs
- CodeConstructor.cs
- XPathItem.cs
- TypeInfo.cs
- MarkupCompilePass1.cs
- EventLogStatus.cs
- VisualTreeHelper.cs
- LinkAreaEditor.cs
- MediaPlayerState.cs
- glyphs.cs
- OpenTypeLayoutCache.cs
- CroppedBitmap.cs
- ToolStripProgressBar.cs
- SiteMembershipCondition.cs
- RadioButtonPopupAdapter.cs
- RequestBringIntoViewEventArgs.cs
- BuildResultCache.cs
- ADMembershipUser.cs
- RowBinding.cs
- OleDbConnection.cs
- GlobalEventManager.cs
- HttpDebugHandler.cs
- DataObjectCopyingEventArgs.cs
- DeferredSelectedIndexReference.cs
- embossbitmapeffect.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- DataGridViewTopLeftHeaderCell.cs
- SmiSettersStream.cs
- AccessControlEntry.cs
- MachineKeyValidationConverter.cs
- CacheVirtualItemsEvent.cs
- TemplateBamlTreeBuilder.cs
- EncoderFallback.cs
- NonSerializedAttribute.cs
- SupportsPreviewControlAttribute.cs
- ControlIdConverter.cs
- IncomingWebResponseContext.cs
- IndexOutOfRangeException.cs
- SmtpLoginAuthenticationModule.cs
- ColorInterpolationModeValidation.cs
- RelatedImageListAttribute.cs
- BaseDataBoundControlDesigner.cs
- ReflectPropertyDescriptor.cs
- ResolveCriteria.cs
- DataError.cs
- KeyTimeConverter.cs
- DesignerDataTableBase.cs
- EnumValAlphaComparer.cs
- InfiniteIntConverter.cs
- SymmetricAlgorithm.cs
- ThreadStartException.cs
- XmlTextWriter.cs
- AbstractSvcMapFileLoader.cs