Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Visual Studio-在不处于调试模式时逐步执行_C#_Visual Studio - Fatal编程技术网

C# Visual Studio-在不处于调试模式时逐步执行

C# Visual Studio-在不处于调试模式时逐步执行,c#,visual-studio,C#,Visual Studio,我正在浏览大量其他人的代码(所有类库),这对我来说相当复杂。原因之一是以前的开发人员有很多嵌套方法(如果存在这样的术语)。比如说 string = DoThis(CheckThat(WasThisRight(DontForgetTo(AhYouNearlyDidntDo("")ToString().ToLower().Replace("this", "that").ExtensionMethodChaosBegins(); 现在,我可以用鼠标选择方法并点击F12,但它的效率不如只按F11(有几

我正在浏览大量其他人的代码(所有类库),这对我来说相当复杂。原因之一是以前的开发人员有很多嵌套方法(如果存在这样的术语)。比如说

string = DoThis(CheckThat(WasThisRight(DontForgetTo(AhYouNearlyDidntDo("")ToString().ToLower().Replace("this", "that").ExtensionMethodChaosBegins();
现在,我可以用鼠标选择方法并点击F12,但它的效率不如只按F11(有几个原因)


那么,当不是在调试模式下,而是在设计模式下时,是否可以单步执行代码?

在调试模式下执行此操作可能更容易。记住,也有F10用于跨过你不想跨入的线,如果你跨入了你想退出的线,则Shift+F11


您已经知道F12要转到声明,但还记得Shift+F12,它将显示使用成员的所有位置。

在调试模式下执行此操作可能更容易。记住,也有F10用于跨过你不想跨入的线,如果你跨入了你想退出的线,则Shift+F11


你已经知道F12要去申报了,但也请记住Shift+F12,它将显示成员使用的所有位置。

在这种情况下,Resharper的重构工具可能是天赐之物。

在这种情况下,Resharper的重构工具可能是天赐之物。

您可以通过使用
F12
来“跳入”调用的方法来对代码进行试运行。要在点击“return”时跳回调用方法,可以使用
ctrl+减号。这允许您在遍历源代码时手动模拟堆栈


(请注意,ctrl+减号实际上会在保存的状态堆栈中跳转光标位置,因此,如果在被调用的方法中移动光标太多,则最终会出现多个堆叠状态,在实际返回调用函数之前必须循环使用这些状态)

您可以使用
f12
跳转到一个被调用的方法中,对代码进行一次试运行。要在点击“return”时跳回调用方法,可以使用
ctrl+减号。这允许您在遍历源代码时手动模拟堆栈

(请注意,ctrl+减号实际上会在保存的状态堆栈中跳转光标位置,因此,如果在被调用的方法中移动光标太多,则最终会出现多个堆叠的状态,在实际返回调用函数之前必须循环使用这些状态)

我认为您可能会发现这些状态很有用。它在自己的小气泡中显示函数,并从左到右直观地显示正在使用的代码的调用堆栈

它甚至在MSDN中

我想你可能会觉得有用。它在自己的小气泡中显示函数,并从左到右直观地显示正在使用的代码的调用堆栈


它甚至在MSDN中

如果您想单步执行代码,请在调试模式下运行它。如果您处于设计模式,那么代码将不会运行,此外,在某些情况下,您无法修改源代码和单步执行代码。很抱歉,我无法提供关于这一点的任何见解,但我只想说,您的示例代码使我的日子变得有趣:D。如果您想单步执行代码,请在调试模式下运行它。如果您处于设计模式,那么代码将不会运行,此外,在某些情况下,您无法修改源代码和单步执行代码。很抱歉,我无法提供关于这一点的任何见解,但我只想说,您的示例代码使我的日子变得有趣:D。但是我不能单独运行类库(或者我可以吗)?或者我必须先创建一个测试,或者创建一个快速控制台应用程序来调用库?@DaveRook没错。如果您想逐步完成代码,您需要编写一些调用这些方法的东西。没办法。对,这对我来说是个答案,很高兴知道。谢谢你的时间和帮助。但是我不能单独运行类库(或者我可以)?或者我必须先创建一个测试,或者创建一个快速控制台应用程序来调用库?@DaveRook没错。如果您想逐步完成代码,您需要编写一些调用这些方法的东西。没办法。对,这对我来说是个答案,很高兴知道。感谢您的时间和帮助。我们不允许在工作中这样做;基本上,如果它不在MSDN库中,我们就无法访问它!谢谢你+1对于良好的信息,我们不允许在工作中使用它;基本上,如果它不在MSDN库中,我们就无法访问它!谢谢你+1以获取良好信息