2012-04-20 211 views
12

我试图让MvcMailer工作在一个新的MVC 4测试版项目(创建只是为了试一试),使用最新版本的NuGet。错误脚手架与MvcMailer在MVC 4

我得到步骤

PM>脚手架梅勒UserMailer欢迎,PasswordReset

在这一点上,我看到错误消息:

无法解析别名“脚手架'因为它引用术语 'Invoke-Scaffolder',它不被识别为cmdlet,函数, 可操作的程序am或脚本文件。验证该字词并重试。在 行:1个字符:9 +脚手架< < < <邮递员UserMailer欢迎,PasswordReset + CategoryInfo:ObjectNotFound:(脚手架:字符串)[],CommandNotFoundException + FullyQualifiedErrorId:AliasNotResolvedException

更新 :在安装MvcScaffolding(不是NuGet先决条件...)后,同一命令的错误消息更改为:

Invoke-Scaffolder:无法找到 接受参数'UserMailer'的位置参数。在行:1字符:9 +脚手架< < < <邮递员UserMailer欢迎,PasswordReset + CategoryInfo:InvalidArgument:(:) [调用-棚架],ParameterBindingException + FullyQualifiedErrorId:PositionalParameterNotFound,T4Scaffolding.Cmdlets.InvokeScaffolderCmdlet

我该如何解决这个问题?

+0

我在MVC 3中得到了这个问题 – jao 2012-06-26 05:58:12

回答

22

我有同样的问题,修复它我更新了脚手架包(T4在一次,T4 + MVCScaffolding在另一个),并重新启动VS.

update-package T4Scaffolding 

和/或

Update-Package MvcScaffolding 

记得后来重新启动VS。

+0

安装MvcScaffolding后,我得到了进一步的证明(它没有安装...我错过了文档吗?当然不是NuGet的prereq),但现在得到错误' Invoke-Scaffolder:找不到接受参数'UserMailer'的位置参数。“有什么想法? – 2012-04-25 04:15:40

+0

没关系,发现后续问题(请参阅我的单独答案)。 – 2012-04-25 04:24:11

+0

我正准备在你意识到你是同一个人之前,向你推荐Eric的回复:) .... 在你的评论后,我再次看着我的代码,并意识到我已经把剃刀设置为我的默认脚手架,猜我忘了提及它..道歉。 – 2012-05-07 04:52:19

6

就原始问题而言,Segev的回答是正确的。

事实证明,脚手架命令已更改,导致后续错误。正确的脚手架命令是:

脚手架梅勒。剃刀UserMailer欢迎,PasswordReset

https://github.com/smsohan/MvcMailer/issues/37

3

我有类似的问题。原因是我忽略T4Scaffolding后,下面的提示升级:

不同版本T4Scaffolding的已经在Visual Studio 的这个实例中运行,请重新启动Visual Studio,以避免意外的行为。 在重新启动Visual Studio之前,您将无法使用脚手架。

这对于重新启动Visual Studio是非常重要的,那么一切都会顺利进行。

3

我在更新T4Scaffolding软件包时遇到了问题。这是因为我的Packages文件夹中有两个T4Scaffolding文件夹(T4Scaffolding.1.0.6 & T4Scaffolding.1.0.7)。我将1.0.6更名为_T4Scaffolding1.0.6,之后一切运行良好。

3

什么工作对我来说是这样的:

  1. 取消安装MvcMailer
  2. 取消安装MvcScaffoldingT4Scaffolding
  3. 在程序包管理器控制台中设置正确的默认项目。
  4. 从命令运行Scott自己提及的安装包MvcScaffolding -Version 1.0.8-vs2013-Prehere
  5. 安装MvcMailer通过Nuget。
  6. 运行此命令脚手架Mailer.Razor UserMailer欢迎,PasswordReset
+4

这是我在Windows 8.1 Visual Studio 2013上工作的唯一方法。AND您必须以管理员身份运行VS。正如我发现的,在Win 8.1中无法关闭UAC以避免“以管理员身份运行”。 – 2014-04-10 09:41:34

+0

是的,这确实是我用Windows 8.1和VS 2013工作的唯一方法。感谢这个帮助,因为我尝试了几乎所有的可能性,但没有任何工作。 – Saroj 2014-09-10 07:57:37

0

我也有这个错误。 “Invoke-Scaffolder:无法找到接受参数的位置参数...” 对于我刚刚关闭VS12并重新打开固定它。奇怪。