我道歉这将是漫长的啰嗦。但我觉得理解我所做的事情会更好地帮助一些人回答我的问题。
我一直致力于将应用程序和用户设置添加到我一直在组合的项目中。实际上,我已完成任务,编写了一个文件切换验证类,用于更新用户设置或根据相应的文件开关重置它们,并触发无效,重复或有效开关的事件。
所有这一切都很有效。
当谈到我的编码时,我总是有这种学习障碍,我需要在我能够舒服地使用之前准确理解某些东西是如何工作的。我喜欢Visual Studio为我所做的所有事情,但是当我能够的时候,我无法抗拒地看着黑盒子。
话虽如此,我开始使用.settings文件添加了我需要的设置所有测试的所有内容,就像我预期的那样。它当然生成了cs文件和app.config文件完美。
我之所以不喜欢,因为设计器文件不是来自T4代码生成工具,所以我无法控制包装类的静态实例是.Default(我只是不喜欢它的读取方式)我的代码)....
所以我将整个类从设计器文件中删除,将其添加到我自己的cs文件中,进行了我想要的修改并删除了cs和designer文件以及.settings文件。让事情仍然扎实。
然后为了确保它正确地提取,我在类中添加了一个具有所有适当属性等的附加设置,并且确实它出现在我的代码中并且工作得很好。我可以重置,保存等,就像从原始.settings文件生成的那些设置一样。
然而......
我注意到app.config没有反映新值,也没有反映我测试中原始用户设置的更改。
现在我可能完全错过了一些东西,但是......
我可以抓住JUST可执行文件运行它看到默认设置。然后使用各种用户设置修改器开关运行它,请参阅相应的设置。在没有开关的情况下再次运行它并看到相同的用户设置但是没有app.config或在可执行文件的目录中生成的任何其他文件。顺便说一句,没有任何东西成为嵌入式资源。
最后我的问题是:
我想知道这些价值观在哪里持续存在?
答案 0 :(得分:1)
检查本地appdata目录(C:\Documents and Settings\USERNAME\Local Settings\Application data\YOURPROJECTNAME\YOURASSEMBLY\ASSEMBLYVERSION\YOURFILE.config
)。另请参阅MSDN,尤其是Settings File Locations
部分中的Settings Persistence
段。