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
- Region.cs
- EdmFunction.cs
- ProgressBarAutomationPeer.cs
- SystemInfo.cs
- TreePrinter.cs
- SystemFonts.cs
- Rect.cs
- WebPartTransformerCollection.cs
- Resources.Designer.cs
- FormViewRow.cs
- FixedPageAutomationPeer.cs
- ResourceType.cs
- TransactionContextValidator.cs
- Lock.cs
- AssociationSet.cs
- CheckBoxFlatAdapter.cs
- X509ClientCertificateCredentialsElement.cs
- RegexGroupCollection.cs
- unsafenativemethodstextservices.cs
- PolicyManager.cs
- Maps.cs
- TypefaceCollection.cs
- DiagnosticsConfigurationHandler.cs
- ExceptionHandler.cs
- WebPartTransformerAttribute.cs
- Binding.cs
- StyleCollection.cs
- HandledMouseEvent.cs
- AstNode.cs
- ContextMenu.cs
- DetailsViewInsertEventArgs.cs
- TextCharacters.cs
- BaseConfigurationRecord.cs
- SafeReversePInvokeHandle.cs
- UiaCoreTypesApi.cs
- SafeEventLogWriteHandle.cs
- DefaultMergeHelper.cs
- RegistryDataKey.cs
- FigureHelper.cs
- DbXmlEnabledProviderManifest.cs
- Convert.cs
- TableCellAutomationPeer.cs
- TextServicesManager.cs
- SecurityException.cs
- GroupLabel.cs
- CompositeDispatchFormatter.cs
- OracleConnectionString.cs
- MoveSizeWinEventHandler.cs
- DataGridViewComboBoxCell.cs
- XamlToRtfWriter.cs
- AddInProcess.cs
- InfocardExtendedInformationCollection.cs
- WebPartTracker.cs
- AssertFilter.cs
- DbConnectionFactory.cs
- SqlDataSourceQueryConverter.cs
- ToolStripItemTextRenderEventArgs.cs
- Filter.cs
- RotateTransform3D.cs
- DataGridViewButtonColumn.cs
- ListSortDescriptionCollection.cs
- FixedSOMFixedBlock.cs
- PolygonHotSpot.cs
- UrlMappingsModule.cs
- SmtpReplyReaderFactory.cs
- UnlockCardRequest.cs
- CachedPathData.cs
- SimpleFieldTemplateUserControl.cs
- InputScopeAttribute.cs
- Clipboard.cs
- _ChunkParse.cs
- HMACRIPEMD160.cs
- PropertyInfo.cs
- Itemizer.cs
- Hyperlink.cs
- Canvas.cs
- HyperLinkColumn.cs
- TextCompositionManager.cs
- HTTPNotFoundHandler.cs
- RowToParametersTransformer.cs
- HwndSubclass.cs
- ItemMap.cs
- SyndicationElementExtension.cs
- RichTextBox.cs
- SourceChangedEventArgs.cs
- ApplicationHost.cs
- MetadataImporter.cs
- ApplyImportsAction.cs
- XmlSchemaDatatype.cs
- TypeListConverter.cs
- XmlAutoDetectWriter.cs
- DataServiceHost.cs
- HttpVersion.cs
- AccessText.cs
- EntityTemplateFactory.cs
- PeerMaintainer.cs
- MultiBindingExpression.cs
- MsmqMessageProperty.cs
- BitmapEffectvisualstate.cs
- DefaultValueTypeConverter.cs