WebConfigurationManager.OpenWebConfiguration Method (String, String, String, String, IntPtr)
Opens the Web-application configuration file as a Configuration object using the specified virtual path, site name, location, server, and security context to allow read or write operations.
Assembly: System.Web (in System.Web.dll)
<SecurityPermissionAttribute(SecurityAction.Demand, Unrestricted := True)> Public Shared Function OpenWebConfiguration ( path As String, site As String, locationSubPath As String, server As String, userToken As IntPtr ) As Configuration
Parameters
- path
-
Type:
System.String
The virtual path to the configuration file.
- site
-
Type:
System.String
The name of the application Web site, as displayed in Internet Information Services (IIS) configuration.
- locationSubPath
-
Type:
System.String
The specific resource to which the configuration applies.
- server
-
Type:
System.String
The network name of the server the Web application resides on.
- userToken
-
Type:
System.IntPtr
An account token to use.
| Exception | Condition |
|---|---|
| ArgumentException | The server or userToken parameters were invalid. |
| ConfigurationErrorsException | A valid configuration file could not be loaded. |
This method is used to access a configuration file using impersonation.
Note |
|---|
The account token is usually retrieved from an instance of the WindowsIdentity class or through a call to unmanaged code, such as a call to the Win32 API LogonUser. For more information about calls to unmanaged code, see Consuming Unmanaged DLL Functions. |
To obtain the Configuration object for a remote resource, your code must have administrative privileges on the remote computer.
The following example shows how to use the OpenWebConfiguration method to access configuration information.
' Show how to use OpenWebConfiguration(string, string, ' string, string, IntPtr). ' It gets he appSettings section of a Web application ' running on a remote server. ' If the serve is remote your application shall have the ' requires access rights to the configuration file. Shared Sub OpenWebConfiguration6() Dim userToken As IntPtr = _ System.Security.Principal.WindowsIdentity.GetCurrent().Token Dim user As String = _ System.Security.Principal.WindowsIdentity.GetCurrent().Name ' Get the configuration object for a Web application ' running on a remote server. Dim config As System.Configuration.Configuration = _ WebConfigurationManager.OpenWebConfiguration( _ "/configTest", "Default Web Site", _ Nothing, "myServer", userToken) ' Get the appSettings. Dim appSettings As KeyValueConfigurationCollection = _ config.AppSettings.Settings ' Loop through the collection and ' display the appSettings key, value pairs. Console.WriteLine( _ "[appSettings for Web app on server: myServer user: {0}]", user) Dim key As String For Each key In appSettings.AllKeys Console.WriteLine("Name: {0} Value: {1}", _ key, appSettings(key).Value) Next key Console.WriteLine() End Sub 'OpenWebConfiguration6
Available since 2.0
