我继承了一个使用配置管理器类来存储和检索设置的应用程序。在app.config类中有自定义节组" userSettings"其中包括" Server"属性。
在app.config文件中,此值定义为" a14"。在Settings.Designer.vb中,默认值指定为" a5"然而,当我尝试访问My.Settings.Server时,它会返回值" a10",这是我之前在app.config文件中使用的值。
对配置管理器没有太多经验,我无法确定从哪里检索此值以及需要更改的内容,以便检索正确的服务器值。
为简洁起见,我已从代码示例中删除了其他设置。
的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
应用程序代码:(服务器设置为&#34; a10&#34;,但我希望它的app.config值为&#34; a14&#34;)。
Dim Server As String = My.Settings.Server
答案 0 :(得分:1)
看起来我期待错误的事(好吧)。我将这些设置设置为用户设置,这些设置存储在/ appdata /文件夹中,并且与app.config文件完全无关。
用户配置文件已使用初始值设置,之后从未使用My.Settings.Save进行过修改。此答案中的更多详细信息:Where are My.Settings saved in VB 2010 .NET?