什么是MVVM VIEW第一种方法?

Dar*_*Zon 0 c# view mvvm viewmodel

我在PluralSight的Brian Lagunas的课程中学习MVVM.

一开始,他正在编写这两个接口:

public interface IView
{
    IViewModel ViewModel {get;set;}
}

public interface IViewModel
{
    IView View {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

我在那种模式下学习,然后他从IView中删除了ViewModel.

public interface IView {}
Run Code Online (Sandbox Code Playgroud)

但我看不出它的区别,也许它的优点和缺点.如果我把第一个例子弄错了,有什么不对吗?

mar*_*man 6

这当然是为了减少上下文留下任何有用的陈述,但乍一看界面

public interface IViewModel 
{
    IView View {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

对我来说似乎很困惑,因为MVVM模式的主要思想是ViewModel完全没有意识到View.如果您为ViewModel提供了对View的引用,那么您违反了这个想法.