我读过这段文字:
https://groups.google.com/forum/?fromgroups=#!topic/wpf-disciples/P-JwzRB_GE8
模型有责任转换数据类型是个好主意吗?如果视图模型不知道视图,为什么要有不同格式的属性供视图使用?
如果我使用转换器,至少我需要有我的转换器并对其进行编码,但在这种情况下,视图模型对视图一无所知,我认为使用转换器更好,但使用视图模型也许是一个不错的选择作为转换器?
谢谢。
我读过这段文字:
https://groups.google.com/forum/?fromgroups=#!topic/wpf-disciples/P-JwzRB_GE8
模型有责任转换数据类型是个好主意吗?如果视图模型不知道视图,为什么要有不同格式的属性供视图使用?
如果我使用转换器,至少我需要有我的转换器并对其进行编码,但在这种情况下,视图模型对视图一无所知,我认为使用转换器更好,但使用视图模型也许是一个不错的选择作为转换器?
谢谢。
模型有责任转换数据类型是个好主意吗?
不,这就是为什么该链建议使用 ViewModel 而不是 Model 来转换数据格式。
如果视图模型不知道视图,为什么要有不同格式的属性供视图使用?
这就是 Paul Stovell 和 Bill Kempf 在该链条中提出的反对意见。如果你想对 MVVM 保持“纯粹”,一般来说,最好构建一个转换器,它将逻辑完全保留在表示层(视图)中。
话虽如此,这里通常需要考虑一个实用性问题/平衡 - 如果有一个场景是您只会使用一次这种“转换”,那么在 ViewModel 中公开正确类型的数据会更简单,即使它有效地增加了少量的耦合,因为它要编写的代码要少得多。如果数据转换是可以重用的,那么转换器(在我看来)更合适。