每个应用程序都包含一些可配置的设置。这些设置或多或少可以分为两类:
- 应用程序的外观:示例可以是窗口位置、窗口大小、视图的默认选项等。
- 业务规则:这些设置将被业务逻辑使用。
在我实现的架构中,View 有自己的项目(WPF),ViewModel 有自己的项目(类库)。从逻辑上讲,View 应该负责加载/保存视图相关设置,ViewModel 应该负责加载/保存业务设置。
视图设置很容易处理。在设置(app.config)中创建所需的属性,您可以轻松加载并保存它们。
但是,ViewModel 无法通过 View 项目中可用的内置机制访问 app.config 设置。
我的第一个想法是创建一些辅助方法,允许我从 ViewModel 读取/写入 app.config 中的设置。你有什么意见?我是否在这里使事情复杂化,或者这是处理应用程序设置的可接受方式?