Подтвердить что ты не робот

Resharper перейти к конкретной реализации общего интерфейса?

В любом случае, чтобы заставить Resharper перейти к конкретной реализации универсального интерфейса для определенного типа.

например. ICommandHandler<T> и найти конкретную реализацию? Я могу заставить Resharper показать все реализации ICommandHandler, но не позволяет мне легко перейти к реализации типа T. У нас есть сотни обработчиков, и перемещение идет медленнее.

Мы используем Resharper 7.1

Update

Примеры включают такие вещи, как:

public class AddStockRequestLineItemCommandHandler : ICommandHandler<AddStockRequestLineItemCommand>
public class RemoveStockRequestLineItemCommandHandler : ICommandHandler<RemoveStockRequestLineItemCommand>
public class StockRequestFufillingUpdateCommandHandler : ICommandHandler<StockRequestFufilingUpdateCommand>

Использование, например, в конструкторе контроллера MVC, например:

public StockRequestController( ICommandHandler<RemoveStockRequestLineItemCommand> stockRequestLineItemRemoveHandler)
{
    this.stockRequestLineItemRemoveHandler = stockRequestLineItemRemoveHandler;
} 

Мне бы хотелось нажать ICommandHandler<RemoveStockRequestLineItemCommand> и перейти к классу реализации RemoveStockRequestLineItemCommandHandler

4b9b3361

Ответ 1

Resharper 9.1.1 поддерживает поиск способов использования общего интерфейса. Щелкните правой кнопкой мыши на IComamndHandler, и он покажет вам обычаи. Тем не менее, казалось бы, до сих пор не удалось найти реализации.

Лучшее решение, с которым мы столкнулись, было

/// <summary>
/// <see cref="ChangePersonAddressCommandHandler"/>
/// </summary>

Используя cref link http://msdn.microsoft.com/en-us/library/cc837134.aspx и шаблон, добавив это выше команды или нашего контроллера.

Хотелось бы не делать этого и просто перемещаться прямо с помощью Resharper

Ответ 2

Если я нажимаю правой кнопкой мыши на базовый объект, я получаю контекстное меню, которое предлагает:

Go to Implementation (Ctrl+Shift+Alt+B)

который затем предложит мне различные производные объекты (в вашем случае классы)

Ответ 3

ReSharper 2016.1 RTM теперь поддерживает переход к конкретной реализации родового типа с помощью Ctrl + F12.