【问题标题】:What are the reasons for Moles not to generate delegates for some functions?Moles 不为某些功能生成委托的原因是什么?
【发布时间】:2011-12-05 18:31:06
【问题描述】:

对于某些实例方法,我似乎遇到了 Moles 不生成委托的令人困惑的问题。

而不是显示确切的方法(虽然我会指出它是一个 Web 服务代理方法,在它的参数前面有无数的属性)我将提出标题中的上述问题:

Moles 不为某些方法生成委托的原因是什么??

我在手册中注意到的唯一与此问题几乎没有任何关系的事情是,如果私有方法的参数对生成的程序集不可见,则不会生成其受人尊敬的委托。鉴于我的问题与公共代理 Web 服务方法有关,必须有更多原因说明为什么没有生成委托。

提前感谢您的帮助!

【问题讨论】:

    标签: moles pex-and-moles


    【解决方案1】:

    Moles 不会为所有方法生成委托。此外,Microsoft Moles Reference Manual,第 4 页和第 5 页包含与各种迂回机制相关的痣类型的简化概述。例如,当您应该使用存根时,您可能正在使用鼹鼠类型。第 14 页概述了痣类型的一些限制:

    • Moles 框架仅支持有限数量的方法签名 — 最多 10 个参数,其中最后一个参数可以是 out 或 ref 参数。 不支持带有指针的方法签名。
    • 密封类或静态方法不能被存根,因为存根类型依赖于 虚拟方法分派。对于这种情况,请使用“痣”中所述的痣类型 类型”在本文档后面。

    如果阅读 Microsoft Moles 参考手册不能为您的问题提供答案,请发布一个不会产生弯路的方法的简化示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-29
      • 1970-01-01
      • 1970-01-01
      • 2018-09-18
      • 1970-01-01
      • 1970-01-01
      • 2016-05-01
      • 2021-05-08
      相关资源
      最近更新 更多