Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / 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. // 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 in sealed 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
- MailDefinition.cs
- DecoderBestFitFallback.cs
- EventLogInformation.cs
- TemplateContainer.cs
- FixedFlowMap.cs
- Attribute.cs
- CompiledRegexRunner.cs
- UmAlQuraCalendar.cs
- BlurBitmapEffect.cs
- RequestQueue.cs
- AxHostDesigner.cs
- IChannel.cs
- MessageDesigner.cs
- Convert.cs
- XmlSchemaIdentityConstraint.cs
- GeometryModel3D.cs
- CompilerHelpers.cs
- ScriptingRoleServiceSection.cs
- SecurityUtils.cs
- PostBackOptions.cs
- DataGridColumn.cs
- IProvider.cs
- ViewCellRelation.cs
- Predicate.cs
- OdbcConnectionHandle.cs
- BitmapEffectState.cs
- BaseValidator.cs
- EarlyBoundInfo.cs
- CustomWebEventKey.cs
- CompiledQueryCacheKey.cs
- SafeNativeMethods.cs
- ListViewPagedDataSource.cs
- ThrowHelper.cs
- Rotation3DAnimationUsingKeyFrames.cs
- TypeSystem.cs
- TreeView.cs
- ExpressionList.cs
- Input.cs
- SequenceDesigner.xaml.cs
- CollectionDataContract.cs
- StringFunctions.cs
- TextPattern.cs
- SQLByte.cs
- ListViewUpdateEventArgs.cs
- sqlnorm.cs
- ListViewInsertionMark.cs
- OdbcErrorCollection.cs
- WebPartDisplayModeCancelEventArgs.cs
- SignedXml.cs
- ServiceKnownTypeAttribute.cs
- Evaluator.cs
- ButtonFieldBase.cs
- CodeArrayIndexerExpression.cs
- MatrixAnimationBase.cs
- RemoteWebConfigurationHost.cs
- QilCloneVisitor.cs
- ImageMetadata.cs
- WebPartDisplayModeCollection.cs
- PartialCachingAttribute.cs
- ComPlusInstanceProvider.cs
- EnumUnknown.cs
- DataGridCellAutomationPeer.cs
- ImageFormatConverter.cs
- Vector3DAnimationBase.cs
- GlyphTypeface.cs
- SafeIUnknown.cs
- Events.cs
- EventLog.cs
- SHA512.cs
- SqlDataSourceFilteringEventArgs.cs
- TrailingSpaceComparer.cs
- ListViewItem.cs
- MouseGesture.cs
- PEFileEvidenceFactory.cs
- BinHexDecoder.cs
- InstanceOwner.cs
- ObjectPersistData.cs
- PropertyDescriptor.cs
- NamedPipeProcessProtocolHandler.cs
- FontStretchConverter.cs
- XamlParser.cs
- SwitchAttribute.cs
- PublisherIdentityPermission.cs
- ExpressionEditor.cs
- OdbcRowUpdatingEvent.cs
- WebRequestModulesSection.cs
- XmlSchemaSimpleTypeRestriction.cs
- XmlSigningNodeWriter.cs
- ValueProviderWrapper.cs
- TdsParserSessionPool.cs
- PenLineCapValidation.cs
- CompressStream.cs
- JsonFormatReaderGenerator.cs
- ResourceIDHelper.cs
- SortedList.cs
- ExceptionRoutedEventArgs.cs
- CustomErrorCollection.cs
- ErrorRuntimeConfig.cs
- IList.cs
- ReaderContextStackData.cs