How to save user.config to AppData\Roaming folder

2019-02-01 08:52发布

Introductory Example

This code

Properties.Settings.Default.MyUserSettingBlah = "some new value";
Properties.Settings.Default.Save();

saves the user.config file to

C:\Users\MyUserName\AppData\Local\My_Company_Name\MyApp_Url_vb2s5kwidefdmxstmabckatcyl5t0lxd\1.0.0.0\user.config

Question

How can I save user.config to

  • C:\Users\MyUserName\AppData\ Roaming \...

instead of

  • C:\Users\MyUserName\AppData\ Local \... ?

2条回答
Emotional °昔
2楼-- · 2019-02-01 09:23

I don't know if it's a new feature or not, but in VS2010 every setting has a property called Roaming that can be set to true or false.
It's not visible in the Settings designer though, you have to set it in the properties window for the setting you'd like to use it on.

Setting that property to true on a setting adds

[global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)]

to Settings.Designer.cs for that particular setting, which is almost identical to what Ivan suggested.

查看更多
3楼-- · 2019-02-01 09:42

I stumbled on this now...

As far as I know, it should be that you should put:

[global::System.Configuration.SettingsManageability(System.Configuration.SettingsManageability.Roaming)]        

in Settings.Designer.cs for each settng that should go to roaming profile.

Alternatively you can change this on the Settings screen in Visual Studio 2010 by selecting the setting(s) and displaying it's properties (F4). There you can set the Roaming property to True.

查看更多
登录 后发表回答