Ich habe eine Anwendung geerbt, die die Konfigurationsmanagerklasse verwendet, um Einstellungen zu speichern und abzurufen. In der Klasse app.config gibt es eine benutzerdefinierte Abschnittsgruppe "userSettings", die eine "Server" -Eigenschaft enthält.Warum rufen meine Programmeinstellungen andere Werte ab als erwartet?
In der Datei app.config ist dieser Wert als "a14" definiert. In Settings.Designer.vb wird der Standard als "a5" angegeben, aber wenn ich versuche, auf My.Settings.Server zuzugreifen, bringt es den Wert "a10" zurück, was ein Wert ist, den ich zuvor in der Datei app.config verwendet habe.
Da ich nicht viel Erfahrung mit dem Konfigurationsmanager habe, kann ich nicht feststellen, woher er diesen Wert abruft und was ich ändern muss, damit er den korrekten Serverwert abruft.
Der Kürze halber habe ich andere Einstellungen aus dem Codebeispiel entfernt.
app.config:
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="WorkstationApp.My.MySettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
...
<userSettings>
<WorkstationApp.My.MySettings>
<setting name="Server" serializeAs="String">
<value>a14</value>
</setting>
</WorkstationApp.My.MySettings>
</userSettings>
Settings.Designer.vb:
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("a5")> _
Public Property Server() As String
Get
Return CType(Me("Server"),String)
End Get
Set
Me("Server") = value
End Set
End Property
Anwendungscode: (Server eingestellt wird auf "a10" , aber ich möchte, dass es den app.config-Wert von "a14" hat).
Dim Server As String = My.Settings.Server
Versuchen Sie, die Ordner "Bin" und "Debug" des Projekts zu löschen? Einer davon kann eine alte Version von 'app.config' enthalten. – groverboy
Sorry, komme immer noch mit a10 zurück. Gute Idee aber. –
Ich habe dieses Problem gelöst, indem ich die Anwendung gestartet habe, den Wert der Einstellungen geändert und dann my.settings.save verwendet habe, um die neuen Werte zu speichern. Ich würde trotzdem gerne wissen, wo diese Daten geschrieben wurden. –