FileUpload不适用于Razor Webpages 2

时间:2013-03-15 11:18:07

标签: c# file-upload asp.net-webpages razor-2

我曾尝试在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.Web.Helpers ???无法在Razor(v2)的任何地方找到......

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

2 个答案:

答案 0 :(得分:4)

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

Install-Package Microsoft.AspNet.Web.Helpers.Mvc

答案 1 :(得分: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也是其中的一部分,对我来说并不是很清楚。

以为我会与其他混淆者分享: - )