How to output namespace in T4 templates?

前端 未结 6 820
無奈伤痛
無奈伤痛 2020-12-25 11:21

I have a T4 template for a class set up with TextTemplatingFileGenerator Custom Tool in Visual Studio:

<#@ template language=\"C#v3.5\" hostspecific=\"Tru         


        
6条回答
  •  眼角桃花
    2020-12-25 11:48

    The accepted answer doesn't work on Visual Basic Projects. I had to use the method from: http://lennybacon.com/post/2010/12/10/generatingcodefileswithcorrectnamespacesusingt4

    var hostServiceProvider = (IServiceProvider)Host;
    var dte = (EnvDTE.DTE)hostServiceProvider.GetService(typeof(EnvDTE.DTE));
    var activeSolutionProjects = (Array)dte.ActiveSolutionProjects;
    var dteProject = (EnvDTE.Project)activeSolutionProjects.GetValue(0);
    var defaultNamespace = dteProject.Properties.Item("DefaultNamespace").Value;
    

提交回复
热议问题