Ссылка Visual Studio на разные области кода

просто интересно, есть ли какая-либо функция в visual studio 2010, которая позволяет вам поместить ссылку в свои комментарии, которые перенесут вас в другую часть решения. Как функция закладки, но вы переходите к закладке, кликнув по ссылке.

Я просто думаю, что было бы аккуратно поставить ссылку на unit test для каждого из моих методов.

Ответы

Ответ 1

Если вы используете Resharper, вы можете перейти к любому действительному символу, помещенному в комментарий doc, нажав Ctrl.

Например

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

Просто нажмите ctrl-click, и вы там.

К сожалению, я не уверен, что это было бы полезно для ссылок на модульные тесты, поскольку тестируемая сборка обычно ссылается на сборку unit test не наоборот.

Ответ 2

Попробуйте расширение HyperAddin.

В качестве альтернативы, если у вас есть коммерческое дополнение Visual Assist, оно поддерживает переход к (alt + g) в комментариях, хотя результаты будут различаться в зависимости от того, насколько полно символы области видимости в комментариях. Visual Assist также поддерживает теги в комментариях с возможностью навигации (VA Hashtags) и может переходить к файлам, на которые есть ссылки в комментариях, с помощью плагина просмотра файлов для функции ссылок на источник.

Ответ 3

Вы можете испечь прямую ссылку на файл, используя ссылку гипертекста, например:

//file://c:\users\project\myfile.cpp

Однако это открывает файл во встроенном браузере, а не в редакторе кода, который не очень полезен. Он также нуждается в полном пути, поскольку он, похоже, не регистрирует переменные проекта, такие как $(SolutionDir).

Однако, если кто-то здесь разбирается в написании плагинов Visual Studio, я думаю, что переопределение системы гиперссылок было бы хорошим местом для начала работы.

: D

Ответ 4

Supercharger поддерживает этот стиль навигации - см. его реализацию "Code Links". По сути, вы помещаете конструкции goto:... в комментарии и получаете визуально активируемую точку доступа.

Поддерживаются следующие функции:

  • goto:#TagName перемещается к ранее определенному тегу (с тегом: #TagName), может находиться в любом месте одного и того же проекта
  • goto:MemberName перемещается к члену в том же классе/структуре
  • goto:CodeTypeName.MemberName выполняет переход к элементу в том же файле кода, но в другом классе, или к члену в другом файле кода, если имя класса и имя файла кода совпадают
  • goto:FileName\CodeTypeName.MemberName перемещается к участнику в другом файле кода

Отказ от ответственности: я создатель Supercharger.