术语“scaffold”未被识别为cmdlet,函数,脚本文件或可操作程序的名称

时间:2013-02-06 09:08:26

标签: asp.net-mvc nuget scaffolding nuget-package asp.net-mvc-scaffolding

我已经开发了一个ASP.NET MVC 4项目一段时间了,我已经成功使用了“MVCScaffolding”软件包,但几天前我注意到在创建一个新的控制器时,例如MVCScaffolding的项目不再显示。尝试运行scaffold命令也会导致以下错误:

The term 'scaffold' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:9
+ scaffold <<<< 
    + CategoryInfo          : ObjectNotFound: (scaffold:String) [], CommandNotFoundException

我注意到this page已多次提到此问题,但未提供任何解决方案。

此外,“MVCScaffolding”软件包可以在不同解决方案中的相同环境下使用其他项目,但不能使用相同的解决方案,因此我想这是该解决方案特有的内容。我已经尝试手动或通过以下命令卸载并重新安装软件包,重新安装nuget并重启VS Windows几次:);

Uninstall-Package MvcScaffolding -RemoveDependencies
Install-Package MvcScaffolding

我正在寻找的是第一个,显然是如何解决这个特定的问题,第二,一般情况下,在这种情况下应该寻找什么才能开始调试问题?命令提示符如何确定命令是否可用?

提前致谢。

3 个答案:

答案 0 :(得分:3)

MVC Scaffolding在Visual Studio中打开解决方案时定义'scaffold'命令别名。 T4Scaffolding.Core NuGet包实际上是在其init.ps1中调用Set-Alias来执行此操作。您可以检查是否正在运行T4Scaffolding NuGet包的init.ps1。

答案 1 :(得分:0)

我知道这篇文章真的很老..但对于那些仍然面临VS2013问题的人,请尝试以下方法:

  1. Uninstall-Package T4Scaffolding&lt; - 如果您已经使用PM控制台进行安装..

  2. 通过右键单击&#34;引用&#34;进行安装。 - &GT;管理Nuget包 - &gt;搜索T4Scaffolding并从那里安装..

  3. 通过上述步骤,它对我来说就像一个魅力

答案 2 :(得分:-1)

通过NuGetPackage Manager添加T4Scaffolding.Core解决了我的问题。 (版本1.0.8)