2011-12-21 56 views
1

我很抱歉,这将是漫漫长路。但我觉得我已经做了什么会更好地帮助一些人回答我的问题。.NET我的应用程序设置在哪里持续

我一直在努力将应用程序和用户设置添加到我已放在一起的项目中。实际上,我已经完成了该任务,编写了一个文件切换验证类,用于更新用户设置,或者根据相应的文件切换重置它们,并针对无效,重复或有效切换触发事件。

所有这一切都很好。

当谈到我的编码时,我一直有这种学习障碍,我需要明确地知道如何使用它,然后才能感觉舒适。我喜欢Visual Studio为我所做的所有事情,但我无法拒绝在可以的时候在黑盒子中查看。

这就是说,我开始使用一个.settings文件添加了我需要的设置接线一切测试像我预期的一切。它当然会生成完美的cs文件和app.config文件。

我真的不喜欢这样,因为设计器文件不是来自T4代码生成工具,所以我无法控制包装类的静态实例是.Default(我只是不喜欢它读取的方式在我的代码)....

所以我撕裂了设计器文件中的所有课程添加到我自己的CS文件,做了我想要的修改,并删除了CS和设计器文件和.settings文件。冉事情仍然稳定。

然后为了确保它正确地选取东西,我添加了一个额外的设置给所有适当的属性等类,并确信它显示在我的代码和工作得很好。我可以重置,保存等,就像从原始.settings文件生成的设置。

但是......

我注意到,在app.config并没有体现出新的价值,也没有似乎反映原来的用户设置在我的测试中的变化。

现在,可以说我完全失去了一些东西,但...

我可以嵌入只是可执行的运行它看到的默认设置。然后用各种用户设置修改器开关运行它,查看相应的设置。在没有开关的情况下再次运行它,并看到相同的用户设置,但没有app.config或目录中生成的任何其他文件与可执行文件。顺便说一句,没有任何东西成为嵌入式资源。

所以最后我的问题:

我不知道在哪里赫克正在坚持这些价值观?

+1

[Properties.Settings是不是我期望它的值]的可能重复(http://stackoverflow.com/questions/7324297/properties-settings-is-not-the-value-i-expectit即将) – 2011-12-23 17:27:41

+0

它已经足够接近我至少指向正确的方向了。 我将不得不去那个问题,并提出一些问题,因为对我来说似乎有一些矛盾。 它在获得一个问题的过程中得出的答案是我最终得到另一个:-P – TofuBug 2011-12-24 03:54:50

回答

1

查看本地应用程序数据目录(C:\Documents and Settings\USERNAME\Local Settings\Application data\YOURPROJECTNAME\YOURASSEMBLY\ASSEMBLYVERSION\YOURFILE.config)。另请咨询MSDN,特别是Settings File Locations段落Settings Persistence一节。

+0

不,不。尝试一下。 http://blog.stackoverflow.com/2011/12/dont-be-afraid-to-use-the-science/ – 2011-12-23 17:26:04

+0

@Hans Passant:你能详细说明吗? 'UserScopedSettingAttribute'的设置用于我最近在这台PC(Win7)上启动的15个项目以及我检查过的笔记本电脑(WinXP)。 – MagnatLU 2011-12-23 17:31:56

相关问题