为部分 class 禁用 DebuggerStepThrough

disable DebuggerStepThrough for partial class

我有一组由工具自动生成的 classes。但所有 classes 都标有 DebuggerStepThrough 属性

class 是部分的,所以我可以在单独的文件中为 class 编写代码,但是 DebuggerStepThrough 在部分 class 的自动生成部分中影响整个class.

如何为 DebuggerStepThrough 禁用此行为,删除 DebuggerStepThrough 是显而易见的解决方案,但这不是我正在寻找的答案。我不想触摸自动生成的代码。也可以跳过自动生成的代码,但我希望能够调试我自己的代码。

[DebuggerStepThrough]
partial class Foo
{
   // auto generated
}

// how to exclude this part from DebuggerStepThrough?
partial class Foo
{
   // user code
}

据我所知,你要求的是不可能的。部分 class 属性在编译时合并。所以你的两个部分 classes:

[DebuggerStepThrough]
partial class Foo
{
    // auto generated
}

partial class Foo
{
    // user code
}

编译为:

[DebuggerStepThrough]
class Foo
{
    // auto generated

    // user code
}