2016-07-12 5 views
1

Я пытаюсь создать кодовые леса для внутреннего API. Я создал шаблон T4, который включает в себя несколько других шаблонов для каждого создаваемого файла кода. Затем я написал Visual Studio Extension (VSIX) с формой WPF, чтобы захватить ввод пользователя и инициировать преобразование шаблона T4. Я делаю все это в Visual Studio Professional 2013.Сгенерированные файлы T4, не добавленные в Project из Visual Studio Extension

Это то, что я следовал, чтобы вызвать преобразование текста в VS Extension https://msdn.microsoft.com/en-us/library/gg586947%28v=vs.120%29.aspx?f=255&MSPPError=-2147217396

При тестировании шаблонов локально с помощью выполнения пользовательского инструмента, все работает отлично. Однако при тестировании расширения VS в экспериментальном экземпляре Visual Studio проблема, с которой я столкнулась, заключается в том, что после вызова преобразования [вызов ITextTemplating.ProcessTemplate] сгенерированные файлы не помещаются в мой открытый проект. Я подтвердил, что они существуют в соответствующих папках в Проводнике.

Я искал высокий & низкий и не может найти что-либо, что об этом говорит. Есть идеи?

ответ

1

Пользовательский инструмент использует API Visual Studio (объект DTE) для добавления сгенерированных файлов в проекты. Я построил что-то очень similar, и это то, что я должен был сделать. Это project немного устарело, но это отличная отправная точка для того, чтобы увидеть, как это можно сделать.

В основном вам нужно получить ссылку на папку, в которую хотите добавить новый элемент, а затем позвонить AddFromFile. Также не забудьте сделать save проект после добавления всех предметов.