【问题标题】:Getting useful debugging info from dynamic types从动态类型中获取有用的调试信息
【发布时间】:2013-01-05 02:42:17
【问题描述】:

我正在开发一个大量使用dynamic 类型的代码库,并且越来越难以准确找出正在创建和传递的内容。即使在调试和检查感兴趣的类型时,只要我检查动态视图,我就会收到“无法发现有关此对象的更多信息”的消息,这没有帮助。有什么有用的技巧可以帮助我更多地了解隐藏在dynamic 黑魔法背后的一些类型和属性吗?

【问题讨论】:

  • 您是否考虑过减少对dynamic 类型的依赖?
  • 你不知道我有多想这么做——介绍他们不是我的决定。基本上,该站点是建立在 Orchard 之上的,它大量使用了它们。我正在尝试在充满动态类型魔法的代码库中为业务提供功能。我必须处理它并尝试了解如何处理它

标签: c# debugging dynamic


【解决方案1】:

我从DynamicObject 继承的自定义动态类遇到了同样的问题。解决方案是覆盖public override IEnumerable<string> GetDynamicMemberNames() 以返回成员列表。就我而言,所有成员都包含在字典中,所以我做了以下操作:

    public override IEnumerable<string> GetDynamicMemberNames()
    {
        return properties.Keys;
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-18
    • 2015-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多