ConfigurationManager.OpenMappedExeConfiguration Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Otwiera określony plik konfiguracji klienta jako Configuration obiekt.
Przeciążenia
OpenMappedExeConfiguration(ExeConfigurationFileMap, ConfigurationUserLevel) |
Otwiera określony plik konfiguracji klienta jako Configuration obiekt, który używa określonego mapowania plików i poziomu użytkownika. |
OpenMappedExeConfiguration(ExeConfigurationFileMap, ConfigurationUserLevel, Boolean) |
Otwiera określony plik konfiguracji klienta jako Configuration obiekt, który używa określonej opcji mapowania plików, poziomu użytkownika i wstępnego ładowania. |
OpenMappedExeConfiguration(ExeConfigurationFileMap, ConfigurationUserLevel)
- Źródło:
- ConfigurationManager.cs
- Źródło:
- ConfigurationManager.cs
- Źródło:
- ConfigurationManager.cs
Otwiera określony plik konfiguracji klienta jako Configuration obiekt, który używa określonego mapowania plików i poziomu użytkownika.
public:
static System::Configuration::Configuration ^ OpenMappedExeConfiguration(System::Configuration::ExeConfigurationFileMap ^ fileMap, System::Configuration::ConfigurationUserLevel userLevel);
public static System.Configuration.Configuration OpenMappedExeConfiguration (System.Configuration.ExeConfigurationFileMap fileMap, System.Configuration.ConfigurationUserLevel userLevel);
static member OpenMappedExeConfiguration : System.Configuration.ExeConfigurationFileMap * System.Configuration.ConfigurationUserLevel -> System.Configuration.Configuration
Public Shared Function OpenMappedExeConfiguration (fileMap As ExeConfigurationFileMap, userLevel As ConfigurationUserLevel) As Configuration
Parametry
- fileMap
- ExeConfigurationFileMap
Plik konfiguracji do użycia zamiast domyślnego pliku konfiguracji aplikacji.
- userLevel
- ConfigurationUserLevel
Jedna z wartości wyliczenia, która określa poziom użytkownika, dla którego otwierasz konfigurację.
Zwraca
Obiekt konfiguracji.
Wyjątki
Nie można załadować pliku konfiguracji.
Przykłady
Poniższy przykład kodu przedstawia sposób użycia OpenMappedExeConfiguration metody w celu uzyskania wszystkich sekcji zawartych w pliku konfiguracji.
// Access a configuration file using mapping.
// This function uses the OpenMappedExeConfiguration
// method to access a new configuration file.
// It also gets the custom ConsoleSection and
// sets its ConsoleElement BackgroundColor and
// ForegroundColor properties to green and red
// respectively. Then it uses these properties to
// set the console colors.
public static void MapExeConfiguration()
{
// Get the application configuration file.
System.Configuration.Configuration config =
ConfigurationManager.OpenExeConfiguration(
ConfigurationUserLevel.None);
Console.WriteLine(config.FilePath);
if (config == null)
{
Console.WriteLine(
"The configuration file does not exist.");
Console.WriteLine(
"Use OpenExeConfiguration to create the file.");
}
// Create a new configuration file by saving
// the application configuration to a new file.
string appName =
Environment.GetCommandLineArgs()[0];
string configFile = string.Concat(appName,
".2.config");
config.SaveAs(configFile, ConfigurationSaveMode.Full);
// Map the new configuration file.
ExeConfigurationFileMap configFileMap =
new ExeConfigurationFileMap();
configFileMap.ExeConfigFilename = configFile;
// Get the mapped configuration file
config =
ConfigurationManager.OpenMappedExeConfiguration(
configFileMap, ConfigurationUserLevel.None);
// Make changes to the new configuration file.
// This is to show that this file is the
// one that is used.
string sectionName = "consoleSection";
ConsoleSection customSection =
(ConsoleSection)config.GetSection(sectionName);
if (customSection == null)
{
customSection = new ConsoleSection();
config.Sections.Add(sectionName, customSection);
}
else
// Change the section configuration values.
customSection =
(ConsoleSection)config.GetSection(sectionName);
customSection.ConsoleElement.BackgroundColor =
ConsoleColor.Green;
customSection.ConsoleElement.ForegroundColor =
ConsoleColor.Red;
// Save the configuration file.
config.Save(ConfigurationSaveMode.Modified);
// Force a reload of the changed section. This
// makes the new values available for reading.
ConfigurationManager.RefreshSection(sectionName);
// Set console properties using the
// configuration values contained in the
// new configuration file.
Console.BackgroundColor =
customSection.ConsoleElement.BackgroundColor;
Console.ForegroundColor =
customSection.ConsoleElement.ForegroundColor;
Console.Clear();
Console.WriteLine();
Console.WriteLine("Using OpenMappedExeConfiguration.");
Console.WriteLine("Configuration file is: {0}",
config.FilePath);
}
' Access a configuration file using mapping.
' This function uses the OpenMappedExeConfiguration
' method to access a new configuration file.
' It also gets the custom ConsoleSection and
' sets its ConsoleElement BackgroundColor and
' ForegroundColor properties to green and red
' respectively. Then it uses these properties to
' set the console colors.
Public Shared Sub MapExeConfiguration()
' Get the application configuration file.
Dim config As System.Configuration.Configuration = _
ConfigurationManager.OpenExeConfiguration( _
ConfigurationUserLevel.None)
Console.WriteLine(config.FilePath)
If config Is Nothing Then
Console.WriteLine( _
"The configuration file does not exist.")
Console.WriteLine( _
"Use OpenExeConfiguration to create file.")
End If
' Create a new configuration file by saving
' the application configuration to a new file.
Dim appName As String = _
Environment.GetCommandLineArgs()(0)
Dim configFile As String = _
String.Concat(appName, "2.config")
config.SaveAs(configFile, _
ConfigurationSaveMode.Full)
' Map the new configuration file.
Dim configFileMap As New ExeConfigurationFileMap()
configFileMap.ExeConfigFilename = configFile
' Get the mapped configuration file
config = _
ConfigurationManager.OpenMappedExeConfiguration( _
configFileMap, ConfigurationUserLevel.None)
' Make changes to the new configuration file.
' This is to show that this file is the
' one that is used.
Dim sectionName As String = "consoleSection"
Dim customSection As ConsoleSection = _
DirectCast(config.GetSection(sectionName), _
ConsoleSection)
If customSection Is Nothing Then
customSection = New ConsoleSection()
config.Sections.Add(sectionName, customSection)
End If
' Change the section configuration values.
customSection = _
DirectCast(config.GetSection(sectionName), _
ConsoleSection)
customSection.ConsoleElement.BackgroundColor = _
ConsoleColor.Green
customSection.ConsoleElement.ForegroundColor = _
ConsoleColor.Red
' Save the configuration file.
config.Save(ConfigurationSaveMode.Modified)
' Force a reload of the changed section. This
' makes the new values available for reading.
ConfigurationManager.RefreshSection(sectionName)
' Set console properties using the
' configuration values contained in the
' new configuration file.
Console.BackgroundColor = _
customSection.ConsoleElement.BackgroundColor
Console.ForegroundColor = _
customSection.ConsoleElement.ForegroundColor
Console.Clear()
Console.WriteLine()
Console.WriteLine( _
"Using OpenMappedExeConfiguration.")
Console.WriteLine( _
"Configuration file is: {0}", config.FilePath)
End Sub
Uwagi
Obiekt ConfigurationUserLevel określa lokalizację otwieranego pliku konfiguracji. Wskazuje, czy plik nie ma poziomu użytkownika (plik konfiguracji znajduje się w tym samym katalogu co aplikacja) lub ma poziom na użytkownika (plik konfiguracji znajduje się w ścieżce ustawień aplikacji określonej przez userLevel
).
Uwaga
Aby uzyskać Configuration obiekt dla zasobu, kod musi mieć uprawnienia do odczytu dla wszystkich plików konfiguracji, z których dziedziczy ustawienia. Aby zaktualizować plik konfiguracji, kod musi dodatkowo mieć uprawnienia do zapisu zarówno dla pliku konfiguracji, jak i katalogu, w którym istnieje.
Zobacz też
Dotyczy
OpenMappedExeConfiguration(ExeConfigurationFileMap, ConfigurationUserLevel, Boolean)
- Źródło:
- ConfigurationManager.cs
- Źródło:
- ConfigurationManager.cs
- Źródło:
- ConfigurationManager.cs
Otwiera określony plik konfiguracji klienta jako Configuration obiekt, który używa określonej opcji mapowania plików, poziomu użytkownika i wstępnego ładowania.
public:
static System::Configuration::Configuration ^ OpenMappedExeConfiguration(System::Configuration::ExeConfigurationFileMap ^ fileMap, System::Configuration::ConfigurationUserLevel userLevel, bool preLoad);
public static System.Configuration.Configuration OpenMappedExeConfiguration (System.Configuration.ExeConfigurationFileMap fileMap, System.Configuration.ConfigurationUserLevel userLevel, bool preLoad);
static member OpenMappedExeConfiguration : System.Configuration.ExeConfigurationFileMap * System.Configuration.ConfigurationUserLevel * bool -> System.Configuration.Configuration
Public Shared Function OpenMappedExeConfiguration (fileMap As ExeConfigurationFileMap, userLevel As ConfigurationUserLevel, preLoad As Boolean) As Configuration
Parametry
- fileMap
- ExeConfigurationFileMap
Plik konfiguracji do użycia zamiast domyślnego pliku konfiguracji aplikacji.
- userLevel
- ConfigurationUserLevel
Jedna z wartości wyliczenia, która określa poziom użytkownika, dla którego otwierasz konfigurację.
- preLoad
- Boolean
true
aby wstępnie załadować wszystkie grupy i sekcje sekcji; w przeciwnym razie , false
.
Zwraca
Obiekt konfiguracji.
Wyjątki
Nie można załadować pliku konfiguracji.
Uwagi
Obiekt ConfigurationUserLevel określa lokalizację otwieranego pliku konfiguracji. Wskazuje, czy plik nie ma poziomu użytkownika (plik konfiguracji znajduje się w tym samym katalogu co aplikacja) lub ma poziom na użytkownika (plik konfiguracji znajduje się w ścieżce ustawień aplikacji, która jest określana przez userLevel
program ).
Uwaga
Aby uzyskać Configuration obiekt dla zasobu, kod musi mieć uprawnienia do odczytu dla wszystkich plików konfiguracji, z których dziedziczy ustawienia. Aby zaktualizować plik konfiguracji, kod musi dodatkowo mieć uprawnienia do zapisu zarówno dla pliku konfiguracji, jak i katalogu, w którym istnieje.
Aby zapoznać się z przykładem kodu, zobacz OpenMappedExeConfiguration przeciążenie.