Wie zu verwenden ConfigurationManager.AppSettings mit einem benutzerdefinierten Abschnitt?
Ich brauche, um die "http://example.com" aus mit App.config-Datei.
Aber im moment bin ich mit:
string peopleXMLPath = ConfigurationManager.AppSettings["server"];
Ich kann nicht den Wert.
Könnte Sie darauf hinweisen, was ich falsch mache?
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<configSections>
<section name="device" type="System.Configuration.SingleTagSectionHandler" />
<section name="server" type="System.Configuration.SingleTagSectionHandler" />
</configSections>
<device id="1" description="petras room" location="" mall="" />
<server url="http://example.com" />
</configuration>
- haacked.com/archive/2007/03/11/...
ConfigurationManager.AppSettings["MyAppSetting"]
gibt dir nur die Einstellung formschlüssig mit dem Namen "MyAppSetting" unter<appSettings>
in Ihrer Konfigurationsdatei an.- Check this link, stackoverflow.com/questions/6329114/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich glaube, Sie brauchen, um die config-Abschnitt, und der Zugang, dass:
Und müssen Sie auch aktualisieren Sie Ihre config-Datei:
Edit: Als CodeCaster erwähnt in seiner Antwort,,
SingleTagSectionHandler
ist nur für den internen Gebrauch. Ich denkeNameValueSectionHandler
ist die bevorzugte Methode zum definieren config-Abschnitte.url="http://example.com"
von einem Attribut aufserver
um ein Kindadd
tag.Den
SingleTagSectionHandler
- Dokumentation sagt:Wie gezeigt hier obwohl, können Sie es abrufen als
HashTable
und den Zugriff auf Ihre Einträge:bekommt den Wert aus der
appSettings
Teil der app.config-Datei, aber Sie speichern Ihren Wert inEntweder legen Sie den Wert in der
appSettings
Abschnitt als unter-oder den Wert abrufen von seiner aktuellen Position.Müssen Sie einen Schlüssel-Wert-paar in deine config den Abschnitt appSettings. Wie unten:
Ihre Lesung code ist richtig, aber Sie sollten wahrscheinlich auf null prüfen. Wenn Sie den code nicht Lesen der config-Wert der
string
variable null sein.Du bist die Definition einer Konfiguration Abschnitt statt einer Wert in
AppSettings
. Sie können fügen Sie einfach Ihre Einstellung zuAppSettings
:Benutzerdefinierte config-Abschnitte werden in der Regel verwendet für kompliziertere Konfigurationen (z.B. mehrere Werte pro Schlüssel, "nicht-string" - Werte, etc.
Wenn Sie wollen, um den Wert aus dem app-Einstellungen " appsetting-element in der Konfigurationsdatei müssen einen Schlüssel.
definieren Sie Ihre Server Wert, wie unten erwähnt unter Konfiguration Abschnitt:
Führen Sie nun folgenden code-Zeile, um die server-url: