Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.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/VB.NET文件上载控件_Asp.net_Vb.net_File Upload - Fatal编程技术网

ASP.NET/VB.NET文件上载控件

ASP.NET/VB.NET文件上载控件,asp.net,vb.net,file-upload,Asp.net,Vb.net,File Upload,我有一个文件上传问题,当我从本地机器上选择一个文件时,它不会带来文件的真实路径,它会使用项目文件的路径,并假设我选择的文件存在,有什么想法吗 例如: 文件名为“Q.JPG”,位于“C:\”中 当我浏览到“C:\”并选择“Q.JPG”并单击“打开”时,我得到以下错误 找不到文件“C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\q.jpg”。 例如,当我启动将文件上传到FTP的代码时,它会返回一个错误,因为文件不存在 HTML端: <

我有一个文件上传问题,当我从本地机器上选择一个文件时,它不会带来文件的真实路径,它会使用项目文件的路径,并假设我选择的文件存在,有什么想法吗

例如: 文件名为“Q.JPG”,位于“C:\”中 当我浏览到“C:\”并选择“Q.JPG”并单击“打开”时,我得到以下错误 找不到文件“C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\q.jpg”。 例如,当我启动将文件上传到FTP的代码时,它会返回一个错误,因为文件不存在

HTML端:

<asp:FileUpload ID="FU" runat="server" Height="24px" />

问题是您试图将PostedFile作为本地文件(在web服务器上)读入,而不是从附加到文件上载程序的HttpPostedFile对象读入

尝试:


我尝试了一些东西,它成功了

            FU.SaveAs("C:\" & FU.FileName)

            '--------------------------
            ' set up request...

            Dim LocFile As String = FU.PostedFile.FileName
            Dim clsRequest As System.Net.FtpWebRequest = DirectCast(System.Net.WebRequest.Create("MyFTP.com" & LocFile), System.Net.FtpWebRequest)

            clsRequest.Credentials = New System.Net.NetworkCredential("username", "password")
            clsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile

它起作用了。。只需将文件从FU(FileUpload)保存到C:\,然后将地址设置为始终从C:\

开始听起来像是客户端(即浏览器)的问题,而不是服务器端的问题。您是否可以发布文件上载程序的标记、打开按钮以及与这些控件相关的任何事件的事件处理程序?是的,这会起作用,但是,您没有实现不必使用服务器磁盘的目标。如果你能接受这个问题的答案,那就太好了。
End Sub
Dim objFileStream As System.IO.Stream = FU.PostedFile.InputStream
Dim bFile(objFileStream.Length) As Byte
objFileStream.Read(bFile, 0, objFileStream.Length)
            FU.SaveAs("C:\" & FU.FileName)

            '--------------------------
            ' set up request...

            Dim LocFile As String = FU.PostedFile.FileName
            Dim clsRequest As System.Net.FtpWebRequest = DirectCast(System.Net.WebRequest.Create("MyFTP.com" & LocFile), System.Net.FtpWebRequest)

            clsRequest.Credentials = New System.Net.NetworkCredential("username", "password")
            clsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile