WebConfigurationManager.OpenWebConfiguration Method (String, String, String, String, String, String)
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)
public static Configuration OpenWebConfiguration( string path, string site, string locationSubPath, string server, string userName, string password )
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.
- userName
-
Type:
System.String
The full user name (Domain\User) to use when opening the file.
- password
-
Type:
System.String
The password for the user name.
| Exception | Condition |
|---|---|
| ArgumentException | The server or userName and password parameters were invalid. |
| ConfigurationErrorsException | Could not load a valid configuration file. |
This method is used to access a configuration file using impersonation.
To obtain the Configuration object for a remote resource, your code must have administrative privileges on the remote computer.
You might need to run the ASP.NET IIS Registration Tool (Aspnet_regiis.exe) with the -config+ option to enable access to the configuration files on the remote computer.
The following example shows how to access configuration information with the OpenWebConfiguration method.
// Show how to use OpenWebConfiguration(string, string, // string, string, string, string). // It gets he appSettings section of a Web application // running on a remote server. // If the server is remote your application must have the // required access rights to the configuration file. static void OpenWebConfiguration5() { // Get the current user. string user = System.Security.Principal.WindowsIdentity.GetCurrent().Name; // Assign the actual password. string password = "userPassword"; // Get the configuration object for a Web application // running on a remote server. System.Configuration.Configuration config = WebConfigurationManager.OpenWebConfiguration( "/configTest", "Default Web Site", null, "myServer", user, password) as System.Configuration.Configuration; // Get the appSettings. KeyValueConfigurationCollection appSettings = 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); foreach (string key in appSettings.AllKeys) { Console.WriteLine("Name: {0} Value: {1}", key, appSettings[key].Value); } Console.WriteLine(); }
Available since 2.0