2009-09-03 3 views
2

Я искал, чтобы написать/получить визуальное дополнение к студии.Visual Studio Добавить в Добавить трассировку

Я хочу, чтобы иметь возможность писать описательные вызовы журнала в верхней и нижней части функции.

как этот

log.debug("TheClass.TheMethod(string TheStringParam ="+TheStringParam+") - in"); 

log.debug("TheClass.TheMethod(string TheStringParam ="+TheStringParam+") - out"); 

Есть ли адин, что делает это? Есть ли источник где-нибудь для добавления, как Ghost Doc, который делает отражение (или что-то еще) до . Разбирайте параметры и т. Д.?

ответ

2

Похоже, что вы можете посмотреть AOP для этого. Вот CodeProject example. Вот blog post on it. Должно быть достаточно, чтобы вы начали.

+0

Я вижу, как до и после того, как будет умный способ сделать это, но я хочу нажать на метод в уже существующем приложении, нажать комбинацию клавиш и вставить строки вверху и внизу метода. Как Ghost Doc добавляет html-комментарии для функции. –

+0

PostSharp отлично подходит для этого. Взгляните на http://www.postsharp.org/ и пример «Trace». Именно то, что вы хотите с атрибутами. –

0

CodeRush поставляется с функцией (Selection Embedding), которая позволяет вам выбрать блок кода/текста, нажать клавишу и заблокировать блок по вашему выбору кода/текста.

Этот текст может быть рассчитан во время установки на основе окружающего контекста, если требуется. Многие из них построили StringProviders (Tokens), которые доступны из коробки, а другие могут быть созданы достаточно легко, исходя из ваших потребностей.

Например. Создается «? MethodName» StringProvider, но для создания «? ParameterValues» необходимо выполнить некоторую работу (не так много), чтобы создать «? ParameterValues»

DXCore (свободная структура плагина, на которой был построен CodeRush) создание 3rd party plugins, которое может работать вместе с CodeRush или автономно, используя только DXCore. Такой плагин может быть создан, чтобы применить подобную логику к одному методу, или все в пределах файла, класс, проекта или решения