Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net FileUpload1.HasFile为False_Asp.net_Vb.net_File Upload - Fatal编程技术网

Asp.net FileUpload1.HasFile为False

Asp.net FileUpload1.HasFile为False,asp.net,vb.net,file-upload,Asp.net,Vb.net,File Upload,我试图在互联网上搜索这个问题,我看到每个人都在问UpdatePanel中的文件上传控制问题。首先,我没有使用UpdatePanel。下面是我的代码: HTML <head runat="server"> <title></title> </head> <body> <form id="form1" method="post" runat="server" enctype="multipart/form-data"&

我试图在互联网上搜索这个问题,我看到每个人都在问UpdatePanel中的文件上传控制问题。首先,我没有使用UpdatePanel。下面是我的代码:

HTML

<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" method="post" runat="server" enctype="multipart/form-data">
    <div>
        <asp:FileUpload ID="fuImport" runat="server" />
        <asp:Button ID="btnImport" runat="server" Text="Import" />
    </div>
    </form>
</body>
</html>
我看到fuImport.HasFile为False,但fuImport.FileName只给出了文件名。例如,如果我选择
c:\1.txt
,它只给出
“1.txt”

尽管我选择了一个文件,但有人能告诉我为什么fuImport.HasFile为False吗?

我找到了答案。我上传的txt文件是空的。我编辑了文本文件,然后通过在其中键入内容来保存。我在msdn中的任何地方都找不到这个,或者我不确定我是否看错了地方。凯西的建议对我很有帮助。

这很奇怪。在这个问题上,我给你的分数是+1。根据这里的文档,它肯定会返回True:为什么FileUpload.Filename会返回绝对文件名(“C:\1.txt”)?这是文件在客户端浏览器中的位置,在您的服务器上不可用?@mortb问题不是他得到的是“1.txt”,而不是“c:\1.txt”。这在这一点上无关紧要。重要的是,
HasFile
肯定会返回true。是的,我明白了。注释有点太快了…您在哪里将btnImport连接到所显示的事件处理程序?
Protected Sub btnImport_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnImport.Click
    If (fuImport.HasFile) Then
        fuImport.SaveAs(My.Settings.FileImportPath & Path.GetFileName(fuImport.FileName))
    End If
End Sub