Powershell T4脚手架不适用于visual studio 2015

Powershell T4脚手架不适用于visual studio 2015,powershell,visual-studio-2015,envdte,t4scaffolding,Powershell,Visual Studio 2015,Envdte,T4scaffolding,我已经创建了一个T4脚手架模板库,我已经在visual studio的早期版本中成功地使用了该库,但是现在将我的项目升级到VS 2015后,在打开“Package Manager控制台”时出现以下错误: 看来,EnvDTE.DTE可能不再受到开箱即用的支持了 是否有解决此问题的方法,或者VS 2015中是否有可以运行我现有T4模板文件的新机制 我的项目构建和运行良好。修复: 如果已经安装了所有3个软件包,请卸载它们 在NuGet Package Manager中搜索“MvcScaffolding

我已经创建了一个T4脚手架模板库,我已经在visual studio的早期版本中成功地使用了该库,但是现在将我的项目升级到VS 2015后,在打开“Package Manager控制台”时出现以下错误:

看来,
EnvDTE.DTE
可能不再受到开箱即用的支持了

是否有解决此问题的方法,或者VS 2015中是否有可以运行我现有T4模板文件的新机制

我的项目构建和运行良好。

修复:

  • 如果已经安装了所有3个软件包,请卸载它们
  • 在NuGet Package Manager中搜索“MvcScaffolding.VS2015”,并将其添加到项目中
  • 重新启动Visual Studio,启动Package Manager控制台时的错误将消失
  • 出于您的兴趣,可以在以下位置找到新的软件包:

    如果您只需安装该软件包,其他软件包就可以通过。希望这对尼克有帮助。如果这解决了您的问题,请标记为已回答

    ---------------------------------------------------------------------------------- 其他信息:我收到了Steve Sanderson(T4Scaffolding/MVC Scaffolding的主要作者之一)的电子邮件:

    恐怕MVCScapfolding/T4Scaffolding不再受支持或维护,因为它们在几年前被ASP.NET scaffolding功能所取代

    如果有帮助,MvcScaffolding/T4Scaffolding的源代码位于

    有两种选择:

  • 将现有脚本移植到
  • 获取MVCScapfolding和T4Scaffolding的源代码并修复 VS2013及以上版本引入的错误
    另一个想法是在安装了必要的扩展之后修复VS2015。就好像默认的EnvDTE引用是通过默认安装修复的一样。这有时对我有用。谢谢约翰。我会仔细阅读你的建议,然后把我的发现反馈给你。嗨@NickReady。我现在已经上传了适用于Visual Studio 2013和VS 2015的NuGet软件包。如果你发现这个问题解决了你的问题,我可以请你把它标记为已回答吗?谢谢。你好,Naomi,如果你点击上面列表中的3个包,它们都会链接到各自的NuGet URL。或者,如果您搜索“MvcScaffolding.VS2015”,则可以通过Visual Studio中的NuGet Package Manager找到它们。您只需安装此软件包,其他软件包将顺利通过。干杯。@Naomi我相信使用最新的VS&NuGet更新会有问题。恐怕下一段时间我很忙,所以可能没有时间处理这件事。我可以要求您在github项目中提出这个bug,并包含一个示例测试项目,将其分解为最简单的可复制状态吗?谢谢如果建议的答案解决了您的问题,为什么不将其标记为已接受?请您提供反馈,说明这是否解决了您的问题?
    Set-DefaultScaffolder : Cannot get an instance of EnvDTE.DTE
    At C:\MyPath\packages\T4Scaffolding.1.0.8\tools\init.ps1:7 char:1
    + Set-DefaultScaffolder -Name Repository -Scaffolder T4Scaffolding.EFRe    ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Set-DefaultScaffolder], InvalidOperationException
    + FullyQualifiedErrorId : T4Scaffolding.Cmdlets.SetDefaultScaffolderCmdlet