Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Configuration / WebConfigurationManager.cs / 1305376 / WebConfigurationManager.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Collections; using System.Collections.Specialized; using System.Configuration; using System.Security; using System.Security.Permissions; using System.Web.Hosting; public static class WebConfigurationManager { public static NameValueCollection AppSettings { get { return ConfigurationManager.AppSettings; } } public static ConnectionStringSettingsCollection ConnectionStrings { get { return ConfigurationManager.ConnectionStrings; } } public static object GetSection(string sectionName) { if (HttpConfigurationSystem.UseHttpConfigurationSystem) { return HttpConfigurationSystem.GetSection(sectionName); } else { return ConfigurationManager.GetSection(sectionName); } } public static object GetSection(string sectionName, string path) { if (HttpConfigurationSystem.UseHttpConfigurationSystem) { return HttpConfigurationSystem.GetSection(sectionName, path); } else { throw new InvalidOperationException(SR.GetString(SR.Config_GetSectionWithPathArgInvalid)); } } public static object GetWebApplicationSection(string sectionName) { if (HttpConfigurationSystem.UseHttpConfigurationSystem) { return HttpConfigurationSystem.GetApplicationSection(sectionName); } else { return ConfigurationManager.GetSection(sectionName); } } // // ************************************************* // ** Static Management Functions to edit config ** // ************************************************* // private static Configuration OpenWebConfigurationImpl( WebLevel webLevel, ConfigurationFileMap fileMap, string path, string site, string locationSubPath, string server, string userName, string password, IntPtr userToken) { // In the hosted case, we allow app relative (~/....). Otherwise, it must be absolute VirtualPath virtualPath; if (HostingEnvironment.IsHosted) { virtualPath = VirtualPath.CreateNonRelativeAllowNull(path); } else { virtualPath = VirtualPath.CreateAbsoluteAllowNull(path); } return WebConfigurationHost.OpenConfiguration(webLevel, fileMap, virtualPath, site, locationSubPath, server, userName, password, userToken); } // // API extra notes: // // OpenWebConfiguration(null) // - Open root web.config // // OpenWebConfiguration("/fxtest"); // - If calling from a hosted app (e.g. an ASP.NET page), it will open web.config at // virtual path "/fxtest" in the current running application (which gives the site) // - If calling from a non-hosted app (e.g. console app), it will do the same thing // except it will use the default web site. // // OpenWebConfiguration("/", "1", "fxtest") // - Open web.config at the root of site "1" and get the config that applies to location "fxtest" // // // OpenMachineConfiguration // public static Configuration OpenMachineConfiguration() { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, null, null, null, null, IntPtr.Zero); } public static Configuration OpenMachineConfiguration(string locationSubPath) { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, locationSubPath, null, null, null, IntPtr.Zero); } public static Configuration OpenMachineConfiguration(string locationSubPath, string server) { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, locationSubPath, server, null, null, IntPtr.Zero); } public static Configuration OpenMachineConfiguration(string locationSubPath, string server, string userName, string password) { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, locationSubPath, server, userName, password, IntPtr.Zero); } [SecurityPermission(SecurityAction.Demand, Unrestricted = true)] public static Configuration OpenMachineConfiguration(string locationSubPath, string server, IntPtr userToken) { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, locationSubPath, server, null, null, userToken); } public static Configuration OpenMappedMachineConfiguration(ConfigurationFileMap fileMap) { return OpenWebConfigurationImpl(WebLevel.Machine, fileMap, null, null, null, null, null, null, IntPtr.Zero); } public static Configuration OpenMappedMachineConfiguration(ConfigurationFileMap fileMap, string locationSubPath) { return OpenWebConfigurationImpl(WebLevel.Machine, fileMap, null, null, locationSubPath, null, null, null, IntPtr.Zero); } // // OpenWebConfiguration // public static Configuration OpenWebConfiguration(string path) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, null, null, null, null, null, IntPtr.Zero); } public static Configuration OpenWebConfiguration(string path, string site) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, null, null, null, null, IntPtr.Zero); } public static Configuration OpenWebConfiguration(string path, string site, string locationSubPath) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, locationSubPath, null, null, null, IntPtr.Zero); } public static Configuration OpenWebConfiguration(string path, string site, string locationSubPath, string server) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, locationSubPath, server, null, null, IntPtr.Zero); } public static Configuration OpenWebConfiguration(string path, string site, string locationSubPath, string server, string userName, string password) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, locationSubPath, server, userName, password, IntPtr.Zero); } [SecurityPermission(SecurityAction.Demand, Unrestricted = true)] public static Configuration OpenWebConfiguration(string path, string site, string locationSubPath, string server, IntPtr userToken) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, locationSubPath, server, null, null, userToken); } public static Configuration OpenMappedWebConfiguration(WebConfigurationFileMap fileMap, string path) { return OpenWebConfigurationImpl(WebLevel.Path, fileMap, path, null, null, null, null, null, IntPtr.Zero); } public static Configuration OpenMappedWebConfiguration(WebConfigurationFileMap fileMap, string path, string site) { return OpenWebConfigurationImpl(WebLevel.Path, fileMap, path, site, null, null, null, null, IntPtr.Zero); } public static Configuration OpenMappedWebConfiguration(WebConfigurationFileMap fileMap, string path, string site, string locationSubPath) { return OpenWebConfigurationImpl(WebLevel.Path, fileMap, path, site, locationSubPath, null, null, null, IntPtr.Zero); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Collections; using System.Collections.Specialized; using System.Configuration; using System.Security; using System.Security.Permissions; using System.Web.Hosting; public static class WebConfigurationManager { public static NameValueCollection AppSettings { get { return ConfigurationManager.AppSettings; } } public static ConnectionStringSettingsCollection ConnectionStrings { get { return ConfigurationManager.ConnectionStrings; } } public static object GetSection(string sectionName) { if (HttpConfigurationSystem.UseHttpConfigurationSystem) { return HttpConfigurationSystem.GetSection(sectionName); } else { return ConfigurationManager.GetSection(sectionName); } } public static object GetSection(string sectionName, string path) { if (HttpConfigurationSystem.UseHttpConfigurationSystem) { return HttpConfigurationSystem.GetSection(sectionName, path); } else { throw new InvalidOperationException(SR.GetString(SR.Config_GetSectionWithPathArgInvalid)); } } public static object GetWebApplicationSection(string sectionName) { if (HttpConfigurationSystem.UseHttpConfigurationSystem) { return HttpConfigurationSystem.GetApplicationSection(sectionName); } else { return ConfigurationManager.GetSection(sectionName); } } // // ************************************************* // ** Static Management Functions to edit config ** // ************************************************* // private static Configuration OpenWebConfigurationImpl( WebLevel webLevel, ConfigurationFileMap fileMap, string path, string site, string locationSubPath, string server, string userName, string password, IntPtr userToken) { // In the hosted case, we allow app relative (~/....). Otherwise, it must be absolute VirtualPath virtualPath; if (HostingEnvironment.IsHosted) { virtualPath = VirtualPath.CreateNonRelativeAllowNull(path); } else { virtualPath = VirtualPath.CreateAbsoluteAllowNull(path); } return WebConfigurationHost.OpenConfiguration(webLevel, fileMap, virtualPath, site, locationSubPath, server, userName, password, userToken); } // // API extra notes: // // OpenWebConfiguration(null) // - Open root web.config // // OpenWebConfiguration("/fxtest"); // - If calling from a hosted app (e.g. an ASP.NET page), it will open web.config at // virtual path "/fxtest" in the current running application (which gives the site) // - If calling from a non-hosted app (e.g. console app), it will do the same thing // except it will use the default web site. // // OpenWebConfiguration("/", "1", "fxtest") // - Open web.config at the root of site "1" and get the config that applies to location "fxtest" // // // OpenMachineConfiguration // public static Configuration OpenMachineConfiguration() { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, null, null, null, null, IntPtr.Zero); } public static Configuration OpenMachineConfiguration(string locationSubPath) { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, locationSubPath, null, null, null, IntPtr.Zero); } public static Configuration OpenMachineConfiguration(string locationSubPath, string server) { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, locationSubPath, server, null, null, IntPtr.Zero); } public static Configuration OpenMachineConfiguration(string locationSubPath, string server, string userName, string password) { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, locationSubPath, server, userName, password, IntPtr.Zero); } [SecurityPermission(SecurityAction.Demand, Unrestricted = true)] public static Configuration OpenMachineConfiguration(string locationSubPath, string server, IntPtr userToken) { return OpenWebConfigurationImpl(WebLevel.Machine, null, null, null, locationSubPath, server, null, null, userToken); } public static Configuration OpenMappedMachineConfiguration(ConfigurationFileMap fileMap) { return OpenWebConfigurationImpl(WebLevel.Machine, fileMap, null, null, null, null, null, null, IntPtr.Zero); } public static Configuration OpenMappedMachineConfiguration(ConfigurationFileMap fileMap, string locationSubPath) { return OpenWebConfigurationImpl(WebLevel.Machine, fileMap, null, null, locationSubPath, null, null, null, IntPtr.Zero); } // // OpenWebConfiguration // public static Configuration OpenWebConfiguration(string path) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, null, null, null, null, null, IntPtr.Zero); } public static Configuration OpenWebConfiguration(string path, string site) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, null, null, null, null, IntPtr.Zero); } public static Configuration OpenWebConfiguration(string path, string site, string locationSubPath) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, locationSubPath, null, null, null, IntPtr.Zero); } public static Configuration OpenWebConfiguration(string path, string site, string locationSubPath, string server) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, locationSubPath, server, null, null, IntPtr.Zero); } public static Configuration OpenWebConfiguration(string path, string site, string locationSubPath, string server, string userName, string password) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, locationSubPath, server, userName, password, IntPtr.Zero); } [SecurityPermission(SecurityAction.Demand, Unrestricted = true)] public static Configuration OpenWebConfiguration(string path, string site, string locationSubPath, string server, IntPtr userToken) { return OpenWebConfigurationImpl(WebLevel.Path, null, path, site, locationSubPath, server, null, null, userToken); } public static Configuration OpenMappedWebConfiguration(WebConfigurationFileMap fileMap, string path) { return OpenWebConfigurationImpl(WebLevel.Path, fileMap, path, null, null, null, null, null, IntPtr.Zero); } public static Configuration OpenMappedWebConfiguration(WebConfigurationFileMap fileMap, string path, string site) { return OpenWebConfigurationImpl(WebLevel.Path, fileMap, path, site, null, null, null, null, IntPtr.Zero); } public static Configuration OpenMappedWebConfiguration(WebConfigurationFileMap fileMap, string path, string site, string locationSubPath) { return OpenWebConfigurationImpl(WebLevel.Path, fileMap, path, site, locationSubPath, null, null, null, IntPtr.Zero); } } } // 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
- CryptoApi.cs
- XPathNode.cs
- QilBinary.cs
- IfAction.cs
- InkCanvasSelection.cs
- FixedTextPointer.cs
- AsymmetricKeyExchangeFormatter.cs
- WriteTimeStream.cs
- InputLanguageCollection.cs
- PathSegment.cs
- QueryOperationResponseOfT.cs
- DesignerProperties.cs
- XmlSchemaIdentityConstraint.cs
- TextTreeInsertUndoUnit.cs
- SByte.cs
- ToolStripDropDownMenu.cs
- DSASignatureDeformatter.cs
- BatchParser.cs
- SystemWebCachingSectionGroup.cs
- StylusPointPropertyUnit.cs
- UICuesEvent.cs
- TouchPoint.cs
- ClickablePoint.cs
- DataSourceControl.cs
- Publisher.cs
- MenuAdapter.cs
- Vector3DCollectionConverter.cs
- DynamicPropertyReader.cs
- IconBitmapDecoder.cs
- TrustDriver.cs
- SystemIcmpV4Statistics.cs
- NetSectionGroup.cs
- MessageCredentialType.cs
- TextDecorationLocationValidation.cs
- TextureBrush.cs
- ProgressChangedEventArgs.cs
- DataConnectionHelper.cs
- StorageEntitySetMapping.cs
- Icon.cs
- DataGridPagerStyle.cs
- SerializationFieldInfo.cs
- BinaryMethodMessage.cs
- HttpRawResponse.cs
- ControlCollection.cs
- FileChangesMonitor.cs
- UriWriter.cs
- DependencyObject.cs
- CryptoApi.cs
- TextEmbeddedObject.cs
- DataSourceNameHandler.cs
- ControlBindingsCollection.cs
- OleDbRowUpdatedEvent.cs
- WebDisplayNameAttribute.cs
- GeneralTransform.cs
- CopyNodeSetAction.cs
- XamlBuildTaskServices.cs
- SqlNotificationEventArgs.cs
- grammarelement.cs
- LinkLabelLinkClickedEvent.cs
- WSHttpBinding.cs
- VirtualPathExtension.cs
- HttpDebugHandler.cs
- BrowserCapabilitiesCompiler.cs
- GenericIdentity.cs
- ProxyGenerationError.cs
- QueryCacheManager.cs
- DPCustomTypeDescriptor.cs
- DependencyObjectCodeDomSerializer.cs
- XmlQueryRuntime.cs
- CellConstant.cs
- PartitionResolver.cs
- CrossAppDomainChannel.cs
- HttpCachePolicy.cs
- TextModifier.cs
- TextBreakpoint.cs
- DBConcurrencyException.cs
- SelectionChangedEventArgs.cs
- MetabaseSettings.cs
- PasswordTextContainer.cs
- ListBox.cs
- XmlSchemas.cs
- Floater.cs
- ErrorHandler.cs
- TriggerCollection.cs
- MouseEvent.cs
- EnumBuilder.cs
- SHA1Cng.cs
- RequestResponse.cs
- GeneralTransform3DTo2D.cs
- RC2CryptoServiceProvider.cs
- FormsAuthenticationCredentials.cs
- StylusOverProperty.cs
- BitmapCodecInfoInternal.cs
- UnsafeNativeMethods.cs
- Pair.cs
- MarginCollapsingState.cs
- ProfileEventArgs.cs
- TransportContext.cs
- XmlWriterSettings.cs
- GenericTypeParameterBuilder.cs