2013-07-11 3 views
0

Я создал плагин в VS 2012. Это плагин также содержит шаблоны T4. Я реализовал логику для выполнения t4-шаблонов при щелчке плагина, когда шаблоны t4 также присутствуют в решении плагина.Вложение t4 шаблонов в плагин

Проблема заключается в том, как вставлять шаблоны T4 в плагин, чтобы при использовании этого плагина в любом другом решении, которое не содержит эти файлы шаблонов, затем также на Click of plugin templates выполняются и производят выходные файлы. Я использую фрагмент кода, который я использую.

var dte = Marshal.GetActiveObject("VisualStudio.DTE.11.0") as EnvDTE80.DTE2; 
    Solution sol = ((DTE)dte).Solution; 
    string strFileName = string.Empty; 
    foreach (Project project in sol.Projects) 
    { 
     foreach (ProjectItem item in project.ProjectItems) 
     {        
     if (item.Name.Contains(".tt")) 
     { 
      VSLangProj.VSProjectItem itemobj =(VSLangProj.VSProjectItem)item.Object; 
      itemobj.RunCustomTool();      
     }    
     } 
    } 

Автор: Shivani Сриваставы

ответ

1

Вы, вероятно, хотите, чтобы воспользоваться услугой T4. Вы можете получить IServiceProvider из DTE, затем запрос для STextTemplating. Документы для использования: here.

Смежные вопросы