2014-09-11 78 views
1

是否存储我不想在MVVM项目的Model目录中的ViewModel中使用的“非模型”类(可能是助手类)?MVVM结构。模型类

例如:

Models\SongModel 
Models\ID3TagReader 

ViewModels\SongViewModel 

如果没有,我应该如何封装这些类?

+0

也许创建一个帮助目录? – 2014-09-11 12:48:42

+1

取决于它们是否直接与“模型”相关。如果它们只处于'Model'范围内,则它们应该位于同一个命名空间中 - 如果它们可以在别处使用,则将它们放在适当的命名空间/文件夹中 – Charleh 2014-09-11 12:49:37

+0

没有'MVVM'项目,您正在创建'wpf'项目。没有关于如何组织结构的规则,但是在wpf(例如资源字典)中组织事物有很方便的方法。关于你的问题,不要把它放在'ViewModel'里面,让'Helper'文件夹或者保持它不分类 - 由你决定。 – Sinatr 2014-09-11 13:20:55

回答

0

在此设计中,视图知道ViewModel并绑定到其数据,以便能够反映其中的任何更改。 ViewModel没有引用视图 - 它只包含对模型的引用。

对于视图,ViewModel既作为模型的外观,也作为在视图之间共享状态的一种方式(在本例中为selectedContacts)。另外,ViewModel通常暴露视图可以绑定并触发的命令。

参考链接..

http://blogs.msdn.com/b/ivo_manolov/archive/2012/03/17/10284665.aspx