C# VS2005:当单步执行C代码时,有没有办法跳过代码的各个部分?

C# VS2005:当单步执行C代码时,有没有办法跳过代码的各个部分?,c#,debugging,visual-studio-2005,C#,Debugging,Visual Studio 2005,在单步执行代码时,如何跳过代码的各个部分?当调试器跳转到属性get和set时,我发现这特别烦人。有没有办法避免这种情况?有一个选项跳过属性和运算符(仅限管理) 或者使用F10而不是F11(使用默认键盘绑定)有一个选项跳过属性和运算符(仅限管理) 或者使用F10而不是F11(使用默认键盘绑定)您可以使用“运行到光标”作为一次性断点。您可以使用“运行到光标”作为一次性断点。是的,有一个跨步(F10)功能和一个跨步(F11)功能。是的,有一个跨步(F10)功能和一个跨步(F11).当您使用F10时,除

在单步执行代码时,如何跳过代码的各个部分?当调试器跳转到属性get和set时,我发现这特别烦人。有没有办法避免这种情况?

有一个选项
跳过属性和运算符(仅限管理)


或者使用F10而不是F11(使用默认键盘绑定)

有一个选项
跳过属性和运算符(仅限管理)


或者使用F10而不是F11(使用默认键盘绑定)

您可以使用“运行到光标”作为一次性断点。

您可以使用“运行到光标”作为一次性断点。

是的,有一个跨步(F10)功能和一个跨步(F11)功能。

是的,有一个跨步(F10)功能和一个跨步(F11).

当您使用F10时,除非您在更深层次上设置了断点,否则代码只需在每条语句上单步执行即可。我从来没有发现调试器没有按照您建议的方式运行,请注意,我只使用VS2008。

当您使用F10时,除非您在更深的层次上设置了断点,否则代码只会在每条语句上执行。我从未发现调试器未按您建议的方式运行,请注意,我只使用VS2008。

如果要跳过整个方法,可以使用以下属性标记它:

[DebuggerStepThrough]
public void SomeMethod()
{
    // lots of code...
}

public int SomeProperty
{
    [DebuggerStepThrough] 
    get { return ComplexLogicConvertedToMethod(); } 
    [DebuggerStepThrough]      
    set { this.quantity = value ; }
}
请注意,该属性阻止调试器单步进入该方法或属性,但您始终可以在该方法中放置断点并停止1

该属性非常方便,尤其是当您有这样的代码时:

DoSomething(obj.SomeProperty);
如果您想进入
DoSomething
并按F11键,您将-不带属性-首先进入
SomeProperty
,然后进入
DoSomething
。但是,使用该属性,您将立即进入
DoSomething
方法


1如果要完全阻止用户在方法中放置断点,可以使用。

如果要跳过整个方法,可以使用属性标记它:

[DebuggerStepThrough]
public void SomeMethod()
{
    // lots of code...
}

public int SomeProperty
{
    [DebuggerStepThrough] 
    get { return ComplexLogicConvertedToMethod(); } 
    [DebuggerStepThrough]      
    set { this.quantity = value ; }
}
请注意,该属性阻止调试器单步进入该方法或属性,但您始终可以在该方法中放置断点并停止1

该属性非常方便,尤其是当您有这样的代码时:

DoSomething(obj.SomeProperty);
如果您想进入
DoSomething
并按F11键,您将-不带属性-首先进入
SomeProperty
,然后进入
DoSomething
。但是,使用该属性,您将立即进入
DoSomething
方法

1如果要完全阻止用户将断点放置到方法中,可以使用。

您可以在任何不想单步执行的方法/属性上设置该属性

您还可以使用“单步执行”而不是“单步执行”命令。

您可以在任何不想单步执行的方法/属性上设置属性


您还可以使用“单步执行”而不是“单步执行”命令。

DebuggerStepThrough属性添加到属性中:

[DebuggerStepThrough]
private static void DO() {
  Console.WriteLine("test");
}

DebuggerStepThrough属性添加到属性:

[DebuggerStepThrough]
private static void DO() {
  Console.WriteLine("test");
}

还有Step Out(ctrl-F11)(继续,直到返回到立即调用函数)。还有Step Out(ctrl-F11)(继续,直到返回到立即调用函数)。未获奖是因为未提及F10。这是因为你认为问题没有实际那么幼稚。未获奖是因为未提及F10。这是因为你认为问题没有实际那么幼稚。该选项在VS2005中不可用。该选项在VS2005中不可用。