我正在尝试使用 DTE 在 powershell 脚本中创建一个 WebApi 项目。
当我尝试传递项目模板的文件夹名称时,出现以下错误。
PS> $projTplPath = $dte.Solution.GetProjectTemplate("WebApiApplicationProjectTemplatev4.0", "CSharp")
Exception calling "GetProjectTemplate" with "2" argument(s): "The system cannot find the file specified. (Exception from HRESULT: 0x80070002)"
At line:1 char:1
+ $projTplPath = $dte.Solution.GetProjectTemplate("WebApiApplicationProjectTemplat ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ComMethodTargetInvocation
如果我尝试使用不同的、更简单的项目模板名称来使用相同的方法,它就可以正常工作。
例如:
PS> $projTplPath = $dte.Solution.GetProjectTemplate("AjaxServerControl", "CSharp")
工作没问题。创建 ClassLibrary 或 ConsoleApplication 也是如此。
WebApi 项目模板的项目模板名称是什么?更好的是,项目模板类型列表是什么?我似乎在 MSDN 上找不到枚举或其他此类列表。