0

我尝试在 IIS 上安装 MVC3、MVC4 和 Webpages 2,但它一直告诉我@FileUpload.GetHTML不存在...

“/”应用程序中的服务器错误。

编译错误

说明:编译服务>此请求所需的资源期间发生错误。请查看以下特定错误详细信息并适当修改您的源代码。

编译器错误消息:CS0103:当前上下文中不存在名称“FileUpload”

源错误:

Line 17:     <body>
Line 18:     <h1>FileUpload - Single-File Example</h1>
Line 19:     @FileUpload.GetHtml(                     <---- RED LINE
Line 20:         initialNumberOfFiles:1,
Line 21:         allowMoreFilesToBeAdded:false,

我试图手动复制 dll 以确保它们是正确的版本等。

  • System.Web.Helpers.dll
  • System.Web.Razor.dll
  • System.Web.WebPages.dll
  • System.Web.WebPages.Deloyment.dll
  • System.Web.WebPages.Razor.dll

Microsoft 的示例似乎包括 Microsoft.Web.Helpers ??? 在 Razor (v2) 中的任何地方都找不到...

FileUpload 不是 Razor V2 中 Helpers 的一部分吗?

4

2 回答 2

5

@FileUpload.GetHTML不是System.Web.Helpers程序集的一部分。它Microsoft.AspNet.Web.Helpers.Mvc是您必须在项目中安装的 NuGet 的一部分:

Install-Package Microsoft.AspNet.Web.Helpers.Mvc
于 2013-03-15T11:42:25.080 回答
2

找到了!最后!NuGet 包丢失。

Microsoft.Web.Helpers 不属于 MVC3、MVC4、Razor v2、WebMatrix 2。

您只需要添加名为“ASP.NET Web Helpers Library”的 NuGet 打包(为什么它称为 ASP.NET 而不是 Microsoft 对我来说有点愚蠢,但这就是您需要获取 FileUpload.GetHTML 帮助程序来帮助的那个) .

我没有注意它,因为它在 NuGet 中指出:

此软件包包含 Web 帮助程序,可轻松向您的网站添加功能,例如验证码验证、Twitter 个人资料和搜索框、Gravatars、视频、Bing 搜索、网站分析或主题。

所以,弄清楚 UPLOAD 也是其中的一部分,对我来说并不是很清楚。

以为我会与其他困惑者分享这个:-)

于 2013-03-15T11:39:45.950 回答