【问题标题】:Is Jetbrains dotPeek giving me a warning about my code?Jetbrains dotPeek 是否对我的代码发出警告?
【发布时间】:2013-12-05 14:12:18
【问题描述】:

我正在查看我自己的一些代码,这些代码是用 dotPeek 反编译的。

我一直看到这个:

// ISSUE: method pointer

这是什么意思?这是为了通知我我的代码有问题吗?

谢谢

【问题讨论】:

  • 我打赌你的代码中有 lambda 表达式。 dotPeek 并非所有内容都可以反编译成惯用的 C#(还...)
  • 我有带有方法语法的 LINQ,which I believe uses Lambda behind the scenes
  • 你能贴出给出这个消息的部分代码吗?
  • @AdarshShah 将在大约 12 小时后发帖,这里迟到了 :)

标签: .net decompiling dotpeek


【解决方案1】:

这篇文章:

建议您在代码中隐式使用匿名方法时会看到这些警告 (method pointer),LINQ 可能就是这种情况。看起来它们被编译成显式的方法调用,所以当你反编译它们时,你会看到很多垃圾,除非反编译器知道如何将它们组装回来。

我认为您看到了一个警告,因为 dotPeek 有一种直觉认为代码不是那样的,因此您知道可能出现的潜在问题。可以看到我在页面上引用的原始代码和生成的代码片段有很大的不同,后者在示例2和示例3中非常臃肿。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-13
    • 1970-01-01
    • 2013-06-19
    • 1970-01-01
    • 2018-03-19
    • 2014-02-02
    相关资源
    最近更新 更多