取以下函数:

DataTable go() {
    return someTableAdapter.getSomeData();
}

当我在这个函数中设置断点时,是否有可能检查返回值?Go()直接耦合到.aspx页面中的数据网格。

检查返回数据表的唯一方法是使用临时变量。然而,这有点不方便。没有别的办法了吗?


当前回答

是的,有一个很好的方法。一个显著的缺点是你必须等待5年,也许6年。自从我看到你在2008年11月发的帖子,我建议你waaaaaa…

……aaaait。瞧!只是为了你,微软发布了最新的Visual Studio 2013,它是在调试模式下运行时从菜单中访问的默认功能(菜单debug→Windows→Autos)。

其他回答

您可以尝试选择“someTableAdapter.getSomeData();”,右键单击它,然后选择快速观察。

前。net时代的老把戏:打开寄存器窗口并查看EAX寄存器的值。它包含最后调用的函数的返回值。

我想在Visual Studio 2015中扩展PascalK的答案,因为有一个隐藏的特性没有在检查方法调用的返回值中记录。

如果有嵌套函数调用,则会自动创建伪变量$ResultValueX,其中X指的是函数调用顺序。因此,如果你有一个像Multiply(Five(), Six())这样的调用,则会创建以下伪变量:

Five()     | $ResultValue1 = 5
Six()      | $ResultValue2 = 6
Multiply() | $ResultValue3 = 30

在VS2019中,只需打开调试->Windows->汽车窗口。在那里,你看到concat返回值如下所示:

接受的答案在Visual Studio 2015中不能正常工作,但是通过在方法的最后一行上放置断点并按F10,它将把返回值的所有表达式放入locals窗口。