我正在开发一个 WPF 应用程序,并且正在使用 MVVM 模式来构建它。最初我认为 ViewModel 应该是可重用的,但现在我不太确定了。
所以;应该考虑一个特定的 View 来编写 ViewModel 类,还是考虑可重用性?
最佳答案
要回答您的问题,请考虑单一责任原则:
"A class should have one, and only one, reason to change."
我想说,在合理的范围内,您通常不想为多个 View 重用 ViewModel。我争论的主要原因是,这会给你的 ViewModel 提供不止一个改变的理由。换句话说,如果一种或另一种观点发生变化,它就需要改变,在我看来,这是改变的两个原因。它停在哪里?在这种情况下,我会保持简单,并将一个 ViewModel 绑定(bind)到 View。
使用带有 WPF 的 MVVM 需要考虑的另一件事是数据模板。如果每个 ViewModel 只满足一个 View ,那么实现起来会容易得多。
关于.net - ViewModel 类的可重用性如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2447026/