gpt4 book ai didi

mvvm - 摆脱 VM 中的代理属性?

转载 作者:行者123 更新时间:2023-12-03 10:20:40 29 4
gpt4 key购买 nike

我现在正在学习 MVVM,但我了解的东西很少(这里有很多但很少..):

  • 是否每个模型都可能(通过 VM)暴露给 View 有一个 VM?
    例如,如果我有一个 Contact 和 Address 实体并且每个联系人都有一个 Addresses (many) 属性,这是否意味着我必须创建一个 ContactViewModel 和一个 AddressViewModel 等?
  • 我是否必须在 ViewModel 中再次重新声明模型的所有属性(即名字、姓氏等等)?为什么没有 ViewModelBase 和 ContactViewMode 将是 ViewModelBase 的子类访问实体的属性本身?如果 View 可以访问实体是一个坏主意(请解释原因),那么为什么不让 ViewModelBase 成为 DynamicObject (查看 Dictionary 示例@链接页面),所以我不必在两层(M 和 VM)中一遍又一遍地重新声明所有属性和验证 - 因为实际上, View 无论如何都是通过反射访问 ViewModel 的字段反正。
  • 我认为 MVVM 是我学过的最难的技术。它没有开箱即用的支持,并且有很多框架和方法可以实现它,另一方面,没有安排好的学习方式(例如 MVC),学习 MVVM 意味着浏览和四处冲浪,试图找出更好的方法。底线,我的意思是这部分是please go and vote根据 Ms.
  • 向 MSFT 添加 BCL 中的 MVVM 支持以及 VM 和 Vs 的生成器

    谢谢

    最佳答案

    多么心灵感应!
    我非常喜欢阅读 this罗伯特·麦卡特(Robert McCarter)的精彩文章,他谈到了我感到痛苦的事情!特别是关于代理属性(现在我什至知道它的名字......)。

    我会热情地向每个 MVVM 迷惑者推荐这篇文章(像我一样 - 我相信有很多!)

    关于mvvm - 摆脱 VM 中的代理属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4917966/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com