我想知道这是否会破坏MVVM模式,如果是这样,为什么以及为什么这么糟糕呢?
WPF:
<Button Click="Button_Click" />
Run Code Online (Sandbox Code Playgroud)
代码背后:
private void Button_Click(object sender, RoutedEventArgs e)
{
ViewModel.CallMethod();
}
Run Code Online (Sandbox Code Playgroud)
查看型号:
public void CallMethod()
{
// Some code
}
Run Code Online (Sandbox Code Playgroud)
恕我直言,它使代码背后非常简单,视图模型仍然对视图和代码背后不可知,对视图的更改不会影响业务逻辑.
在我看来比Commands或更简单明了CallMethodAction.
我不想要那种答案"它不应该如何完成".我需要一个恰当而合乎逻辑的理由,说明为什么这样做会导致维护或理解问题.