转到项目“属性”中的“应用程序”选项卡,并将“目标框架”更改为 4.5。
我可能来得太晚了,但因为我也遇到了同样的问题。 我决定将我的答案发布在这里,以供将来寻求答案的人使用。 我必须使用步行来解决这个问题。
dynamic fileUploadControl = fileUpload1;
foreach(var file in fileUploadControl.PostedFiles)
{//do things here}
将 fileUpload userControl 转换为动态对象将允许您绕过编译时错误检查。
应该是这样的:
<asp:FileUpload runat="server" ID="UploadImages" AllowMultiple="true" />
html 代码将是这样的:
<div>
<asp:FileUpload runat="server" ID="UploadImages" AllowMultiple="true" />
<asp:Button runat="server" ID="uploadedFile" Text="Upload" OnClick="uploadFile_Click" />
<asp:Label ID="listofuploadedfiles" runat="server" />
</div>
上传按钮的代码:
protected void uploadFile_Click(object sender, EventArgs e)
{
if (UploadImages.HasFiles)
{
foreach (HttpPostedFile uploadedFile in UploadImages.PostedFiles)
{
uploadedFile.SaveAs(System.IO.Path.Combine(Server.MapPath("~/Images/"),
uploadedFile.FileName)); listofuploadedfiles.Text += String.Format("{0}<br />", uploadedFile.FileName);
}
}
}
我也有同样的问题。我尝试了这个问题的答案中给出的所有上述解决方案。然后我发现我的文件上传控件在更新面板中。文件上传在更新面板中不起作用。