2013-08-01 12 views
7

Ich habe diese app.config:Speichern und Lesen von Benutzereinstellung in app.config

<?xml version="1.0"?> 
<configuration> 
<configSections> 
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > 
    <section name="Alvaro1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" /> 
</sectionGroup> 
</configSections> 
<connectionStrings> 
<add name="conexx" connectionString="Data Source=192.168.1.2 ;Initial Catalog =ifdcontroladoria3 ;uid =sa;pwd = admin2012" providerName="System.Data.SqlClient" /> 
</connectionStrings> 
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client"/></startup> 
<userSettings> 
<Alvaro1.Properties.Settings> 
    <setting name="servidor" serializeAs="String"> 
    <value /> 
    </setting> 
    <setting name="banco" serializeAs="String"> 
    <value /> 
    </setting> 
    <setting name="user" serializeAs="String"> 
    <value /> 
    </setting> 
    <setting name="senha" serializeAs="String"> 
    <value /> 
    </setting> 
</Alvaro1.Properties.Settings> 
</userSettings> 

I System.Configuration im Kopf und in Bezug gesetzt haben, und diesen Code verwenden, um Werte zu speichern:

Properties.Settings.Default.servidor = comboBox1.Text; 
    Properties.Settings.Default.banco = cmbBancos.Text; 

aber wenn ich versuche, diese Werte zu lesen, wird nichts gespeichert:

 servidor = Properties.Settings.Default.servidor; 
     banco = Properties.Settings.Default.banco; 
     lblLevanta.Text = servidor + " " + banco; 

Was im Unrecht tun

Antwort

7

Es könnte sein, dass Sie die Methode Save nicht aufrufen, um die Werte tatsächlich in der Konfigurationsdatei zu speichern.

Nachdem Sie die Werte der Einstellungen, versuchen Sie es mit:

Properties.Settings.Default.Save(); 

Es ist auch erwähnenswert, dass, wenn Sie debuggen \ in Visual Studio ausgeführt wird, wird die Konfigurationsdatei jedes Mal, wenn eine neue ausführen überschrieben werden build - so werden die aktualisierten Einstellungen zwischen den Läufen der Anwendung nicht beibehalten.

+0

funktioniert perfekt Danke Martin –

+0

Sie sind herzlich willkommen :) –

+1

(+1) * Es ist auch erwähnenswert, dass wenn Sie Debuggen \ in Visual Studio ausgeführt wird, die Konfigurationsdatei jedes Mal überschrieben wird, wenn Sie einen neuen Build ausführen - So werden die aktualisierten Einstellungen zwischen den Läufen der Anwendung nicht beibehalten. * –

Verwandte Themen