查找不适用于因pragma而未构建的代码的用法

the*_*kip 4 .net c# resharper resharper-5.1

如果我正在构建调试解决方案而且我有

#if !DEBUG
public void DoA()
{
    DoB();
}
#endif

public void DoB()
{
}
Run Code Online (Sandbox Code Playgroud)

当我使用Find Usagesresharper在DoB上做任何事情都没有找到.查找用法的目的是找到某个方法的所有用法,而不仅仅是在特定构建配置中使用的方法.

这是我可以禁用的东西,因为它使Resharper的重构不那么具有预测性.

Resharper构建是:5.1.3000.12

Erg*_*wun 5

虽然没有严格回答您的问题,但潜在的解决方法(对您来说可能或可能不实用)将是使用Conditional属性而不是#if指令:

[Conditional("DEBUG")]
public void DoA()
{
    DoB();
}

public void DoB()
{
}
Run Code Online (Sandbox Code Playgroud)