Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / xsp / System / Web / Configuration / HostingPreferredMapPath.cs / 1 / HostingPreferredMapPath.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System.Configuration; using System.Collections; using System.Globalization; using System.Xml; using System.Text; using System.Web.Util; using System.Web.UI; using System.IO; using System.Web.Hosting; // // IConfigMapPath that uses the HostingEnvironment's IConfigMapPath for // paths that it maps, and uses the web server IConfigMapPath for // all other paths. // // This allows us to use mappings for an app using SimpleApplicationHost, // while still correctly mapping paths outside the app. // class HostingPreferredMapPath : IConfigMapPath { IConfigMapPath _iisConfigMapPath; IConfigMapPath _hostingConfigMapPath; internal static IConfigMapPath GetInstance() { IConfigMapPath iisConfigMapPath = IISMapPath.GetInstance(); IConfigMapPath hostingConfigMapPath = HostingEnvironment.ConfigMapPath; // Only delegate if the types implementing IConfigMapPath are different. if (hostingConfigMapPath == null || iisConfigMapPath.GetType() == hostingConfigMapPath.GetType()) return iisConfigMapPath; return new HostingPreferredMapPath(iisConfigMapPath, hostingConfigMapPath); } HostingPreferredMapPath(IConfigMapPath iisConfigMapPath, IConfigMapPath hostingConfigMapPath) { _iisConfigMapPath = iisConfigMapPath; _hostingConfigMapPath = hostingConfigMapPath; } public string GetMachineConfigFilename() { string filename = _hostingConfigMapPath.GetMachineConfigFilename(); if (string.IsNullOrEmpty(filename)) { filename = _iisConfigMapPath.GetMachineConfigFilename(); } return filename; } public string GetRootWebConfigFilename() { string filename = _hostingConfigMapPath.GetRootWebConfigFilename(); if (string.IsNullOrEmpty(filename)) { filename = _iisConfigMapPath.GetRootWebConfigFilename(); } return filename; } public void GetPathConfigFilename( string siteID, string path, out string directory, out string baseName) { _hostingConfigMapPath.GetPathConfigFilename(siteID, path, out directory, out baseName); if (string.IsNullOrEmpty(directory)) { _iisConfigMapPath.GetPathConfigFilename(siteID, path, out directory, out baseName); } } public void GetDefaultSiteNameAndID(out string siteName, out string siteID) { _hostingConfigMapPath.GetDefaultSiteNameAndID(out siteName, out siteID); if (string.IsNullOrEmpty(siteID)) { _iisConfigMapPath.GetDefaultSiteNameAndID(out siteName, out siteID); } } public void ResolveSiteArgument(string siteArgument, out string siteName, out string siteID) { _hostingConfigMapPath.ResolveSiteArgument(siteArgument, out siteName, out siteID); if (string.IsNullOrEmpty(siteID)) { _iisConfigMapPath.ResolveSiteArgument(siteArgument, out siteName, out siteID); } } public string MapPath(string siteID, string path) { string physicalPath = _hostingConfigMapPath.MapPath(siteID, path); if (string.IsNullOrEmpty(physicalPath)) { physicalPath = _iisConfigMapPath.MapPath(siteID, path); } return physicalPath; } public string GetAppPathForPath(string siteID, string path) { string appPath = _hostingConfigMapPath.GetAppPathForPath(siteID, path); if (appPath == null) { appPath = _iisConfigMapPath.GetAppPathForPath(siteID, path); } return appPath; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System.Configuration; using System.Collections; using System.Globalization; using System.Xml; using System.Text; using System.Web.Util; using System.Web.UI; using System.IO; using System.Web.Hosting; // // IConfigMapPath that uses the HostingEnvironment's IConfigMapPath for // paths that it maps, and uses the web server IConfigMapPath for // all other paths. // // This allows us to use mappings for an app using SimpleApplicationHost, // while still correctly mapping paths outside the app. // class HostingPreferredMapPath : IConfigMapPath { IConfigMapPath _iisConfigMapPath; IConfigMapPath _hostingConfigMapPath; internal static IConfigMapPath GetInstance() { IConfigMapPath iisConfigMapPath = IISMapPath.GetInstance(); IConfigMapPath hostingConfigMapPath = HostingEnvironment.ConfigMapPath; // Only delegate if the types implementing IConfigMapPath are different. if (hostingConfigMapPath == null || iisConfigMapPath.GetType() == hostingConfigMapPath.GetType()) return iisConfigMapPath; return new HostingPreferredMapPath(iisConfigMapPath, hostingConfigMapPath); } HostingPreferredMapPath(IConfigMapPath iisConfigMapPath, IConfigMapPath hostingConfigMapPath) { _iisConfigMapPath = iisConfigMapPath; _hostingConfigMapPath = hostingConfigMapPath; } public string GetMachineConfigFilename() { string filename = _hostingConfigMapPath.GetMachineConfigFilename(); if (string.IsNullOrEmpty(filename)) { filename = _iisConfigMapPath.GetMachineConfigFilename(); } return filename; } public string GetRootWebConfigFilename() { string filename = _hostingConfigMapPath.GetRootWebConfigFilename(); if (string.IsNullOrEmpty(filename)) { filename = _iisConfigMapPath.GetRootWebConfigFilename(); } return filename; } public void GetPathConfigFilename( string siteID, string path, out string directory, out string baseName) { _hostingConfigMapPath.GetPathConfigFilename(siteID, path, out directory, out baseName); if (string.IsNullOrEmpty(directory)) { _iisConfigMapPath.GetPathConfigFilename(siteID, path, out directory, out baseName); } } public void GetDefaultSiteNameAndID(out string siteName, out string siteID) { _hostingConfigMapPath.GetDefaultSiteNameAndID(out siteName, out siteID); if (string.IsNullOrEmpty(siteID)) { _iisConfigMapPath.GetDefaultSiteNameAndID(out siteName, out siteID); } } public void ResolveSiteArgument(string siteArgument, out string siteName, out string siteID) { _hostingConfigMapPath.ResolveSiteArgument(siteArgument, out siteName, out siteID); if (string.IsNullOrEmpty(siteID)) { _iisConfigMapPath.ResolveSiteArgument(siteArgument, out siteName, out siteID); } } public string MapPath(string siteID, string path) { string physicalPath = _hostingConfigMapPath.MapPath(siteID, path); if (string.IsNullOrEmpty(physicalPath)) { physicalPath = _iisConfigMapPath.MapPath(siteID, path); } return physicalPath; } public string GetAppPathForPath(string siteID, string path) { string appPath = _hostingConfigMapPath.GetAppPathForPath(siteID, path); if (appPath == null) { appPath = _iisConfigMapPath.GetAppPathForPath(siteID, path); } return appPath; } } } // 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
- DataGridCommandEventArgs.cs
- UriWriter.cs
- _ContextAwareResult.cs
- UnmanagedMemoryStreamWrapper.cs
- PagesSection.cs
- ActivityTypeCodeDomSerializer.cs
- FunctionParameter.cs
- DataConnectionHelper.cs
- HandleCollector.cs
- SettingsSection.cs
- TransactionInterop.cs
- HttpWebRequestElement.cs
- SharedStatics.cs
- SystemFonts.cs
- BooleanSwitch.cs
- SafeReadContext.cs
- AnnotationResourceCollection.cs
- Simplifier.cs
- RuleInfoComparer.cs
- PieceNameHelper.cs
- ConfigurationProperty.cs
- StatusBarPanelClickEvent.cs
- NotCondition.cs
- ReadOnlyActivityGlyph.cs
- ReadWriteObjectLock.cs
- ToolStripButton.cs
- BindingContext.cs
- ToolstripProfessionalRenderer.cs
- HttpListener.cs
- IdentityValidationException.cs
- _AuthenticationState.cs
- JsonUriDataContract.cs
- ManagementOperationWatcher.cs
- InternalUserCancelledException.cs
- TemplateXamlTreeBuilder.cs
- XmlAttributeAttribute.cs
- CompoundFileDeflateTransform.cs
- ConvertEvent.cs
- ArglessEventHandlerProxy.cs
- EncoderExceptionFallback.cs
- LoginStatusDesigner.cs
- _NegoState.cs
- ExtentKey.cs
- NullRuntimeConfig.cs
- MeasureItemEvent.cs
- Shared.cs
- TextRunProperties.cs
- PointValueSerializer.cs
- ErrorStyle.cs
- ComponentSerializationService.cs
- WindowsSysHeader.cs
- ValueExpressions.cs
- WebScriptMetadataFormatter.cs
- WebPartHeaderCloseVerb.cs
- KeyValuePairs.cs
- WsdlServiceChannelBuilder.cs
- SQLInt64Storage.cs
- TextServicesDisplayAttributePropertyRanges.cs
- XmlBindingWorker.cs
- DynamicResourceExtensionConverter.cs
- DefaultAsyncDataDispatcher.cs
- DatasetMethodGenerator.cs
- Grant.cs
- odbcmetadatacollectionnames.cs
- ObjectListCommandsPage.cs
- HandleTable.cs
- XmlNullResolver.cs
- GCHandleCookieTable.cs
- EventProviderTraceListener.cs
- OrderByExpression.cs
- AnnotationResourceCollection.cs
- ByeOperationAsyncResult.cs
- WinInetCache.cs
- CompensatableTransactionScopeActivityDesigner.cs
- TableItemPatternIdentifiers.cs
- XmlDocumentFieldSchema.cs
- Permission.cs
- Timer.cs
- HttpSessionStateBase.cs
- BuildResultCache.cs
- ReflectTypeDescriptionProvider.cs
- ProfilePropertyNameValidator.cs
- Function.cs
- SparseMemoryStream.cs
- RuleSettings.cs
- SettingsPropertyNotFoundException.cs
- ArglessEventHandlerProxy.cs
- SinglePageViewer.cs
- CodePropertyReferenceExpression.cs
- InvalidWMPVersionException.cs
- ServiceHttpModule.cs
- PatternMatchRules.cs
- xsdvalidator.cs
- TableLayoutPanelDesigner.cs
- XmlSchemaAnnotated.cs
- SecurityToken.cs
- XmlExpressionDumper.cs
- PrePrepareMethodAttribute.cs
- ColorBlend.cs
- HttpListener.cs