仅出于好奇,想知道是否需要使用任何第三方可安装的MVVM框架,还是我们可以直接在应用程序中创建和定义不同的项目,并将它们称为Model、ViewModel和View,并根据其定义使用它们。
第三方框架是否提供任何额外的功能,上述段落中提到的应用程序是否可以被称为MVVM兼容。
仅出于好奇,想知道是否需要使用任何第三方可安装的MVVM框架,还是我们可以直接在应用程序中创建和定义不同的项目,并将它们称为Model、ViewModel和View,并根据其定义使用它们。
第三方框架是否提供任何额外的功能,上述段落中提到的应用程序是否可以被称为MVVM兼容。
如果你正在寻找一个MVVM框架,我建议使用Catel
你所考虑的方法并不是我个人所谓的“MVVM兼容”(尽管它只是一种模式)。通常,你的Models是用来描述和访问数据的类(Linq2Sql实体),ViewModel是驱动应用程序业务逻辑的类,而Views只是窗口/页面等。通常,我只在我的主项目中为它们创建文件夹,然后从那里开始,但有时将Models放入单独的项目中并命名为MyProjectData
是一个好主意,如果它们将被其他项目使用。
不需要使用任何第三方框架,只需遵循设计模式即可。您可以点击此链接了解更多信息。
不,使用任何可用的MVVM框架都不是必需的,您可以创建自己的MVVM框架并使用它。如果遵循MVVM模式的指南并正确实现框架,则应用程序将符合MVVM。
但是,MVVM框架确实有其优点,它们提供了许多功能/基类,这些功能/基类可以直接使用,而您在自定义MVVM实现中必须自己实现;例如,Prism提供了一种标准方法来解决SL或WPF应用程序中遇到的各种问题/场景(EventAggregator、导航框架、命令等)。
看看我关于Prism的这个问题 -