环境:Visual Studio 2012,MvcScaffolding
我是MvcScaffolding和Powershell的新手,但我想要完成的是将新项目添加到当前项目的解决方案中。因此,基本上用户有1个解决方案,并且该解决方案中的1个项目运行脚手架命令,并在该解决方案中生成一些其他项目。我不想在当前项目中添加项目,因此Add-ProjectItemViaTemplate对我没有帮助。这是在这里使用的正确技术吗?
答案 0 :(得分:1)
我确实想到了这一点,但我不相信这是我想要的路线。我选择了一个自定义的多项目模板来处理我的项目创建,然后使用mvcscaffolding来生成类。
此代码确实可以在当前解决方案中生成一个已创建的类库项目,但我真的很难挖掘,所以我在这里发布
[T4Scaffolding.Scaffolder(Description = "Enter a description here")] [CmdletBinding()]
param(
[string]$Project,
[string]$CodeLanguage,
[string[]]$TemplateFolders,
[switch]$Force = $false
)
$slnName = [System.IO.Path]::GetFilename($dte.DTE.Solution.FullName)
$path = $dte.DTE.Solution.FullName.Replace($slnName,'').Replace('\\','\')
$sln = Get-Interface $dte.Solution ([EnvDTE80.Solution2])
$templatePath = $sln.GetProjectTemplate("ClassLibrary.zip","CSharp")
$sln.AddFromTemplate($templatePath, $path+'TestingLibGen','TestingLibGen')