代码之家  ›  专栏  ›  技术社区  ›  ASanch

您认为DynamicView模型类怎么样?

  •  0
  • ASanch  · 技术社区  · 14 年前

    几周前,我遇到了 this article 在一般谈论MVVM的msdn杂志上。在我看来最突出的一点是DynamicView模型类。它解决了使用MVVM模式的应用程序常见的代码复制问题。

    所以我想知道,还有人试过用它吗?你觉得怎么样?请看,尽管听起来很肤浅,但让我对它感兴趣的一件事是当视图模型纯粹依赖动态属性访问时缺乏智能感知。因此,我通常倾向于返回“代码重复”并在我的ViewModel中实现一个clr属性。

    另外,我不确定使用这个类会带来什么性能影响。有人有主意吗?

    谢谢。

    1 回复  |  直到 14 年前
        1
  •  2
  •   Robert Rossney    14 年前

    你对智能感知的直觉比你想象的要深刻。

    在实践中,视图模型是除名称之外的所有接口。通过选择要在视图模型中实现的属性子集,可以显式定义域对象向视图公开的接口。使视图模型动态化,至少以这种方式,将放弃该决策点。它说,任何设计视图的人都可以决定直接向用户公开域模型的哪些属性。

    我不知道这样做是不好的,但我知道不经过深思熟虑就这么做是不好的。

    正是它的含蓄性让我对这种方法最为恼火。在我看来,在某个地方,您可能想要一个域属性列表,让用户可以面对它。手工实现整个视图模型是维护这个列表的一种笨拙的方法,但是 方式。