Go to implemented method rather than interface

后端 未结 5 1151
礼貌的吻别
礼貌的吻别 2021-02-14 13:24

Oftentimes when browsing code, I\'ll come across something like this:

public class Fruity
{
    private IOrange _Orange;

    public Fruity()
    {
        _Oran         


        
相关标签:
5条回答
  • 2021-02-14 13:43

    Visual Studio 2015 can do this with the "Go To Implementation" extension - https://visualstudiogallery.msdn.microsoft.com/0ed93222-83cd-4db3-92bc-a78909047156

    If there are multiple implementations, it will show you a list so you can pick which to jump to.

    0 讨论(0)
  • 2021-02-14 13:49

    With Visual Studio >= 2015 you can jump to implementation with shortcut keys ctrl + F12

    0 讨论(0)
  • 2021-02-14 13:56

    If you go to the Visual Studio menu "View" and select "Code Definition Window", when you click on .Peel() you might be shown the implementation of .Peel() (this doesn't always work, but try it and see).

    0 讨论(0)
  • 2021-02-14 14:02

    If you double-click or highlight Peel and press CTRL+, you'll get the "navigate to symbol" window which will list the actual implementation, usually as the second item. It's about the fastest way of finding it without 3rd party tools. And unlike "find all references", it only shows the method definitions and not wherever it's called.

    0 讨论(0)
  • 2021-02-14 14:02

    Of course already exists in Visual Studio ! It is there since ever.

    Right click on your code (Ex: property) an select "View Call Hierarchy". In Call Hierarchy window select the Implements folder.

    There you are. Why Resharper ??? Of course is not that complex as go to implementation from resharper which allows direct interrogation on interface, but only a property, or a method from that interface should be enough. Ex:

    public interface IModule
    {
    int Count { get; set; }
    }
    
    public class Module : Imodule
    { 
      public int Count {get; set;}
    }
    
    public class Module2 : Imodule
    { 
       public int Count {get; set;}  
    }
    

    Right click on the Count property (anywhere - inside the class or inside the interface) and select "View Call Hierarchy", should say which class implements it, and therefore the whole Interface.

    At the beginning we all love Resharper, with time, we all hate it !

    0 讨论(0)
提交回复
热议问题