c# - VS2005 : when stepping through C# code, 有没有办法跳过代码段?

标签 c# debugging visual-studio-2005

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

最佳答案

如果你想跳过整个方法,你可以用 DebuggerStepThrough 标记它属性:

[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如果你想完全阻止用户在方法中放置断点,你可以使用 DebuggerHiddenAttribute .

关于c# - VS2005 : when stepping through C# code, 有没有办法跳过代码段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3263263/

相关文章:

visual-studio - 有 Visual Studio 环境变量列表吗?

c# - 阻止特定 c# winforms 的桌面共享或检测桌面共享

java - 使用 -agentlib :jdwp doesn't suspend 进行 Spark 提交

c# - 如何处理服务器上由客户端/javascript 创建的文本框

wpf - 在您的应用程序中放置一个调试控制台窗口

ruby-on-rails - Nginx/Unicorn/Rails 连接超时

c++ - Unresolved external symbol 错误 (LNK2019),包含 header 后

c++ - 如何在 Visual Studio C++ 2005 中处理所有#include 指令?

c# - 我可以将 ReSharper TODO 转换为编译器警告吗?

具有相同参数签名的 C# 构造函数