asp.net C#Fileupload总是返回false

时间:2011-08-01 14:55:38

标签: c# asp.net return-value file-upload

我正在使用fileuploader上传图片。但是,evertyime我选择文件并单击上传按钮,它表示fileuploader.file返回值false并且不运行下一行代码。我能找到的只是它必须是一个单独的形式,并且该方法必须是“发布”,但这并没有解决问题。

这是我的代码隐藏。

 if (FileUploadControl.HasFile)
        {
            try
            {
                string filename = Path.GetFileName(FileUploadControl.FileName);
                FileUploadControl.SaveAs(Server.MapPath("~/") + filename);
                StatusLabel.Text = "Upload status: File uploaded!";
            }
            catch (Exception ex)
            {
                StatusLabel.Text = "Upload status: The file could not be uploaded. The following error occured: " + ex.Message;
            }
        }

这是我的前端代码。

                    <form id="form2" action="CompProfile.aspx" method="post" enctype="multipart/form-data">
                    <asp:FileUpload id="FileUploadControl" runat="server" />
                    <asp:Button runat="server" id="UploadButton" text="Upload" onclick="UploadButton_Click" />
                    <asp:Label runat="server" id="StatusLabel" text="Upload status: " />
                    </form>

2 个答案:

答案 0 :(得分:0)

如果使用0字节大小的文件进行测试,则返回false。确保文件实际上不是空的。

答案 1 :(得分:0)

您的表单应该runat="server"而不是method="post"action="..."