2016-01-27 63 views
3

在C#中是否有類似於[DebuggerStepThrough]屬性的表達式屬性可用?在調試器中跳過表達式的屬性

例如我想要跳過代碼

public Byte ByteArray => Builder.CreateArray(); 

[DebuggerStepThrough]不能被應用到性能。 C#團隊是否在C#6.0中提供任何其他解決方案?

+0

您是否試過這樣做? – i3arnon

回答

3

DebuggerStepThrough是無效的,因爲這表達濃郁的屬性:

[DebuggerStepThrough] 
public Byte ByteArray => Builder.CreateArray(); 

不能編譯。然而,這並不:

public Byte ByteArray 
{ 
    [DebuggerStepThrough] 
    get 
    { 
     return Builder.CreateArray(); 
    } 
} 

還有其他的調試器屬性,如DebuggerHiddenDebuggerNonUserCode,但他們沒有禁用步進式。

您可以在調試選項中禁用所有屬性,但IMO沒有辦法將其配置爲僅用於表達式屬性。

+0

任何解決方法跳過這些屬性? –

+1

@只問這些屬性? – i3arnon

+2

@Ask除非您可以將該屬性附加到整個類中,否則該解決方法與i3arnon所示完全相同,請勿使用表達式體式語法。 –