Создание плагина для [закрытой] Visual Studio

Вот отрывок из ссылки Jason. Это совпадает с методом Phil, но использует носорога

Примечание: mockHttpContext. Запрос заблокирован для возврата mockRequest прежде , внутренности mockRequest погашены. Я полагаю, что этот порядок требуется.

// create a fake web context
var mockHttpContext = MockRepository.GenerateMock<HttpContextBase>();
var mockRequest = MockRepository.GenerateMock<HttpRequestBase>();
mockHttpContext.Stub(x => x.Request).Return(mockRequest);

// tell the mock to return "GET" when HttpMethod is called
mockRequest.Stub(x => x.HttpMethod).Return("GET");            

var controller = new AccountController();

// assign the fake context
var context = new ControllerContext(mockHttpContext, 
                  new RouteData(), 
                  controller);
controller.ControllerContext = context;

// act
...
6
задан AJM 12 November 2009 в 09:21
поделиться

2 ответа

Вы можете написать надстройку для Visual-Studio непосредственно на ее модели надстроек: http://www.c-sharpcorner.com/UploadFile/mgold/AddIns11292005015631AM/AddIns.aspx

Это требует серьезной работы, поскольку модель расширения не очень интуитивно понятна.


Вы также можете сделать это с помощью DXCore: http://blogs.microsoft.co.il/blogs/dhelper/archive/2009/06/17/how-to-write-a-simple-dxcore-plug-in.aspx

Это немного немного проще, а движок плагинов бесплатный.


Последний вариант - писать плагины с помощью Resharper, я никогда этого не делал, но у него есть плагины среди плагинов Style-cop.

У меня был опыт работы с обоими первыми вариантами . С первой, моделью расширений VS, очень сложно работать. Это старый API из предыдущих версий VS, основанный на классическом COM, в котором отсутствует много документации. Второй вариант, плагины DXCore, гораздо более интуитивно понятен, есть Reacher API, но также отсутствует документация. Другая проблема в том, что для этого требуется установка ~ 30 МБ. Удачи :)

4
ответ дан 17 December 2019 в 02:30
поделиться

В новой бета-версии 2 Visual Studio 2010 и SDK есть проекты, предназначенные для такого рода вещей. Параметры расширяемости с новым интерфейсом WPF станут отличным способом добиться этого:

http://msdn.microsoft.com/en-us/vstudio/dd441784.aspx#Extensibility

Будет В 2010 году появилось много интересных вещей

Видео также действительно хороши на: http://msdn.microsoft.com/en-gb/vstudio/bb507746.

2
ответ дан 17 December 2019 в 02:30
поделиться