我最近得到了一堆维护的程序,我正在努力寻找一些帮助来采用一些最佳实践.它们本质上是三个独立的软件,它们使用通用DLL来管理应用程序共享的一系列设置.DLL以这种方式工作:它交换用户设置文件(深埋在Windows用户配置文件夹中的XML文件),以及由硬编码(egad!)路径指定的修复文件.
将其保留为用户设置而不是应用程序设置的基本原理是DLL可以在多个位置找到(每个应用程序将使用它一个),因此用户设置文件很常见(如果DLL的所有副本都是相同的编译),而通过使用应用程序设置,将有与DLL的副本一样多的app.config文件.
我试图想出一种更好的方法来集中这些配置并结束无意义的文件交换.一种方法(实际上,最有可能是最好的方法)是重新设计所有3个应用程序,以便它们都使用带有自己的"app.config"的中央dll.还有其他更值得推荐的场地吗?
您是否考虑过使用Windows注册表?我们都讨厌它,但也许它是这种情况下的最佳选择,因为它是集中式的,您可以轻松地跨应用程序共享设置.
编辑:如果你不喜欢注册表(我不怪你),你可以在Application Data特殊文件夹下的目录中创建XML或其他配置文件.据我所知,这就是现在这样做的方式.
string appData = Environment.GetFolderPath(
Environment.SpecialFolder.LocalApplicationData));
string folder = "MyApplicationName";
string fileName = "settings.xml";
string path = Path.Combine(Path.Combine(appData, folder), fileName);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3085 次 |
| 最近记录: |