【问题标题】:is a good idea to use the view model as converter?将视图模型用作转换器是个好主意吗?
【发布时间】:2013-05-15 17:26:47
【问题描述】:

我已经阅读了这段文字:

https://groups.google.com/forum/?fromgroups=#!topic/wpf-disciples/P-JwzRB_GE8

模型有责任转换数据类型是个好主意吗?如果视图模型不知道视图,为什么要有不同格式的属性供视图使用?

如果我使用转换器,至少我需要有我的转换器并对其进行编码,但在这种情况下,视图模型对视图一无所知,我认为使用转换器更好,但也许是一个不错的选择视图模型作为转换器?

谢谢。

【问题讨论】:

    标签: mvvm converter ivalueconverter


    【解决方案1】:

    模型有责任转换数据类型是个好主意吗?

    没有。这就是为什么该链建议使用 ViewModel 而不是 Model 来转换数据格式。

    如果视图模型不知道视图,为什么要有不同格式的属性供视图使用?

    这是 Paul Stovell 和 Bill Kempf 在该链条中提出的反对这一点的论点。如果你想对 MVVM 保持“纯粹”,一般来说,最好构建一个转换器,它将逻辑完全保留在表示层(视图)中。

    话虽如此,这里通常需要考虑一个实用性问题/平衡 - 如果有一种情况是您只会使用一次这种“转换”,那么在其中公开正确类型的数据可能会更简单ViewModel,即使它有效地添加了少量耦合,因为它要编写的代码要少得多。如果数据转换是可以重复使用的,那么转换器(在我看来)更合适。

    【讨论】:

      猜你喜欢
      • 2010-09-08
      • 2011-07-01
      • 1970-01-01
      • 2022-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多