ERLEDIGT
NEIN
NEIN
ANTWORTEN
5
5
ZUGRIFFE
2616
2616
EMPFEHLEN
-
04.08.06 21:54 #1
Wie kann ich auf einen String der in den Settings einer Application steht zugreifen?
Ich wäre für ein Beispiel dankbar, wenns geht in C#.
THX
-
Gegeben:
Code csharp:1 2 3 4 5
<configuration> <appSettings> <add key="user" value="testuser"/> </appSettings> </configuration>
Dann kannst du das wie folgt auslesen:
Dazu ist im übrigen der Namespace System.Configuration einzubinden.Code csharp:1
string username = ConfigurationSettings.AppSettings.Get("user");
Diese Frage wurde hier im übrigen schon sehr oft beantwortet. Eine Suche hätt also auch zum Ergebnis geführt.
-
05.08.06 11:52 #3
Ich habe keine funktionierende Antwort gefunden!
Bei mir sieht die AppConf so aus:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > <section name="BMC.Applications.FaxMailScheduler.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" /> </sectionGroup> </configSections> <userSettings> <BMC.Applications.FaxMailScheduler.Properties.Settings> <setting name="User" serializeAs="String"> <value>Test</value> </setting> </BMC.Applications.FaxMailScheduler.Properties.Settings> </userSettings> </configuration>
Und beim Kompelieren mit ConfigurationSettings bekomme ich den Hinweis ich soll lieber ConfigurationManager nutzen.
Ich glaube ConfigurationSettings nutzte man bei .NET 1.1, aber wie mache ich es bei 2.0?
-
Wie du es unter .NET 2 machst (bei solchen Fragen bitte dann immer die entsprechende .NET Version angeben) gibt der Debugger doch ganz nett darüber Bescheid:
Gut, zu deiner Lösung: Zwar nicht der schönste Ansatz, aber funktioniert:Warning 1 'System.Configuration.ConfigurationSettings.AppSettings' is obsolete: 'This method is obsolete, it has been replaced by System.Configuration!System.Configuration.ConfigurationManager.AppSettings'
Code csharp:1 2 3 4 5
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); ClientSettingsSection css = (ClientSettingsSection)config.SectionGroups["userSettings"].Sections[0]; SettingElement se = css.Settings.Get("User"); Console.WriteLine("Name : " + se.Name); Console.WriteLine("Value: " + ((SettingValueElement)se.Value).ValueXml.InnerText);
-
06.08.06 22:38 #5
Super das !
Wie kann ich in die Config schreiben (am besten mit Section anlegen) und sie dann speichern?
Gibt es denn auch einen "schönen Ansatz"?
-
06.08.06 23:05 #6
Das Schreiben habe ich selbst rausgefunden:
Code :1 2
((SettingValueElement)se.Value).ValueXml.InnerText = "ABC"; config.Save(ConfigurationSaveMode.Full, true);
Aber es muss doch auch noch einen Eleganteren Weg geben oder?
Ähnliche Themen
-
MSDN ConfigurationSettings. AppSettings[<string>]
Von stephan r. im Forum .NET ArchivAntworten: 4Letzter Beitrag: 09.02.05, 16:02





Zitieren
Login





