假设我在 WPF MVVM 应用程序中有可拖动节点。我需要加载并保存节点的位置及其逻辑。最简单的方法是通过存储库将位置与逻辑一起保存在一个 xml 文件中。但是,这意味着我在模型和 View 模型中有 View 信息。
是否有关于这种情况的最佳实践方法,也许我到目前为止还没有考虑过?
最佳答案
如果您的应用程序关心它向用户显示的 UI 元素的定位,那么我会说定义此定位的数据是您模型中非常合法的一部分。
不要将 UI 与模型和 View 模型解耦的理想与实际业务需求混淆。例如,在像 Visio 这样的应用程序中,您可以说对象在页面中的确切位置是“仅限查看的详细信息”,重要的是对象的属性以及它们之间的连接。但是,从用户的角度来看,对象在工作区中的放置非常重要。换句话说,它是数据模型的一部分。
关于WPF MVVM : View information in the model,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5273088/