【问题标题】:"Go to implementation" on interface with ReSharper与 ReSharper 的接口上的“转到实现”
【发布时间】:2016-04-05 11:02:34
【问题描述】:

我有以下通常的代码结构,其中包含一个接口、一个实现类和对接口方法的调用。

public class ImplementingClass : IInterface
{
  public void Method<T>() {}
}

public interface IInterface()
{
  void Method<T>();
}

public class CallingClass()
{
  private void CallingMethod()
  {
    IInterface instance = new ImplementingClass();
    instance.Method<object>();
  }
}

this StackOverflow answer了解到Ctrl+Click的意思是“去声明”(即界面)和Ctrl+Alt+单击在 ReSharper 中表示“转到实施”。

当我 Ctrl+点击instance.Method(); 中的Method 时,它会将我带到IInterface.MethodCtrl+点击该声明再次没有任何作用 - 到目前为止。

但是:如果我Ctrl+Alt+点击instance.Method();,它仍然会把我带到IInterface.Method,而且只有第二个Ctrl+Alt+点击带我到ImplementingClass.Method

这是 ReSharper 中的设置问题、与 Visual Studio Professional 2015 的快捷方式干扰、对“实现”在此上下文中的含义的误解,还是仅仅是 ReSharper 9.2 中的错误?

N。 B.:instance.Method(); 的上下文菜单中的“转到实现”直接将我带到ImplementingClass.Method,并且该接口只有一个实现。

接口本身没有泛型,不被继承,但是方法有泛型(如上图)。它可能与this problem 有关,虽然我的设置没有那边那么复杂。

【问题讨论】:

    标签: visual-studio-2015 resharper shortcuts


    【解决方案1】:

    我怀疑这是 ReSharper 9.2 中的错误。我在 10.0.2 中尝试过,它看起来完全坏了 - Ctrl+Alt+Click 什么都不做,而 Ctrl+Shift+Click只显示上下文菜单。我提出了一个问题:RSRP-452834

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-08
      • 1970-01-01
      • 1970-01-01
      • 2019-07-26
      • 1970-01-01
      • 2016-01-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多