We help IT Professionals succeed at work.

asp.net file upload, getting timeouts on large file uploads II6 6.0

bluedragon99
bluedragon99 asked
on
824 Views
Last Modified: 2012-05-07
I have set maxrequestentity, modified the metabase.xml and turned off asp buffering and still getting a timeout at just over a minute...have no idea why!


IIS 6.0
Windows 2k3
web.config is as follows:
 
 
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<httpRuntime executionTimeout="360000" maxRequestLength="2097151" useFullyQualifiedRedirectUrl="false" 
minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="10000" />
</system.web>
</configuration>

Open in new window

Comment
Watch Question

Author

Commented:
The request was aborted: The request was canceled.

WebException was unhandled, just over a minute everytime when trying to upload large files via .net code.
 Dim WebClient As New Net.WebClient
        Call WebClient.UploadFile("http://xxxxxx:xxx/xxx.aspx?filename=" & "test.dat", pathtolargefile)

Open in new window

Author

Commented:
any way to turn on tracing/debugging to catch the prob on the webserver?

Author

Commented:
appears that WebClient is timing out, can someone help me convert my uploader to a WebRequest?  doesnt seem to be placing the file on the IIS server...

            Dim rdr As New FileStream("C:\windows\system32\calc.exe", FileMode.Open)
            Dim req As HttpWebRequest = DirectCast(WebRequest.Create("http://xxx.xxxx.com:7601/newuppoint.aspx"), HttpWebRequest)
            req.Method = "POST"
            ' you might use "POST"
            req.ContentLength = rdr.Length
            req.AllowWriteStreamBuffering = True
 
            Dim reqStream As Stream = req.GetRequestStream()
 
            Dim inData As Byte() = New Byte(rdr.Length - 1) {}
 
            ' Get data from upload file to inData 
            Dim bytesRead As Integer = rdr.Read(inData, 0, rdr.Length)
 
            ' put data into request stream
            reqStream.Write(inData, 0, rdr.Length)
 
            rdr.Close()
            req.GetResponse()
 
            ' after uploading close stream 
            reqStream.Close()

Open in new window

Author

Commented:
Server reciever looks like..
<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>
 
<Script language="C#" runat=server>
 
 
 
 
void Page_Load(object sender, EventArgs e) {
   string guid = System.Guid.NewGuid().ToString("N").ToUpper();
 
   foreach(string f in Request.Files.AllKeys) {
			
       HttpPostedFile file = Request.Files[f];
        file.SaveAs("C:\\UpPoint\\ScanMe\\test.zip");
   }
}
</Script>

Open in new window

Unlock this solution and get a sample of our free trial.
(No credit card required)
UNLOCK SOLUTION
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a sample view!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.