有没有一种方法可以告诉.NET在哪里查找用户设置文件?

3

基本上,我们将启动多个应用程序实例,但它们需要具有单独的用户设置。我们目前使用“用户设置”来实现这一点,并且对于单个实例(每个Windows用户)它可以正常工作,但我们希望能够通过命令行传递设置路径来启动多个实例。内置的.NET设置是否有办法做到这一点,还是我们必须自己开发?

5个回答

3

LocalFileSettingsProvider类是管理用户设置文件的类,但很难进行调整。编写该类的人可能被安全问题所困扰,这也许是有道理的。

如果你想继续使用System.Configuration,则需要实现自己的提供程序。最好的方法可能是从RegistrySettingsProvider示例开始。虽然它不能帮助你正确处理文件,但至少你会有一些东西可以构建。使用Reflector进行一些查看可能会有所帮助。


2
我建议开发一个类来处理应用程序设置并接受文件名。我曾经为需要应用程序设置的DLL做过这个工作,如果您想将设置存储在非本地位置(例如网络上的单个位置),这也会有所帮助。
这样做将为您提供更多的灵活性-这绝对值得投资!

0

.Net拥有一个Configuration Provider API。app.config只是该API的预定义实现。您应该研究使用API来扩展内置API或创建自己的API。


0
我建议将配置信息存储在数据库中,并根据用户进行读取。无论如何,您都必须维护用户特定信息的不同副本。在应用程序加载时从数据库中读取并缓存所有设置。
使用用户个性化和配置文件API检索信息。与处理位于用户系统中的文件相比,更新数据库中的信息非常容易。

0

有一篇有趣的CodeProject文章,它有一个自定义设置提供程序。你只需要稍微调整一下代码,就可以将你的设置保存和加载到你提供的文件位置。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接