如何在调试期间查看Lambda源代码

时间:2018-11-23 11:47:51

标签: c# visual-studio lambda

假设我们有一个Func的属性,例如

Func<string, int> MyFuncProperty { get; set; }

在调试期间,尝试读取此lambda是/确实是这样的:

lambda during debug

我只看到它是在方法“ TryUnlink”中以相同类型创建的,它采用字符串并返回int。在调试过程中,如何查看源或创建给定lambda的调用?

检查“参考”是否具有许多参考级别,甚至可能无法告诉我们它到底是哪一个。

1 个答案:

答案 0 :(得分:0)

仅凭Visual Studio,您就无法做自己想做的事。您可以在像illspy这样的应用程序中打开已编译的库,并通过名称<TryUnlink>b__15_0找到此方法,它将以某种奇怪的命名类型存在。

您的另一选择是将属性转换为具有后备字段和显式设置get方法。然后将断点设置为setter,并在使用此特定方法命中时,将向上调用堆栈并查看实际分配的内容。