文件上传控制问题

时间:2010-09-02 15:50:54

标签: asp.net file-upload

我在服务器端使用文件上传控件当我试图获取文件时显示没有文件存在

<asp:FileUpload ID="upldDocument" runat="server" />
string fileExtension = System.IO.Path.GetExtension(upldDocument.FileName);
if (upldDocument.HasFile)
{
}

我得到一个空字符串作为文件扩展名,upldDocument.HasFile即使在选择文件后也返回false。 可能是什么原因?

2 个答案:

答案 0 :(得分:1)

根据发布的代码,我只能提供最好的猜测。没有足够的代码发布以确定问题是什么,但这是我最好的猜测:

如果您还没有,则需要检查HasFile属性。

有关完整示例,请参阅here

修改 - 添加

使用HasFile后,错误的代码无济于事。您需要放置代码以在if语句中获取扩展,以便只有在存在文件时它才会尝试读取扩展名。

string fileExtension = "";
if (upldDocument.HasFile)
{
  fileExtension  = System.IO.Path.GetExtension(upldDocument.FileName);

}
else
{
   //No file selected by user, which is why you can't get the extension.
   // handle this eventuality here even if it means just returning from the function and not doing anything.
}

答案 1 :(得分:0)

你是如何检查这些值的? (在什么情况下)

您是否将表单的enctype属性设置为“multipart / form-data”?