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.

Namespace:   System.Web.Configuration
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.

System_CAPS_noteNote

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

.NET Framework
Available since 2.0
Return to top
Show: