上面的代码没有弄好string sUrl="......"; 
long lTotalLength = ..... 
FileStream fs = new FileStream(.....); 
request = (HttpWebRequest)WebRequest.Create(sUrl); 
request.Method = "POST"; 
request.ContentType = "multipart/form-data; boundary=X7B88765VGT09QJQ7KL989HJ"; 
request.Accept = "*/*"; 
request.ContentLength = lTotalLength; 
request.KeepAlive = false; Stream dataStream = request.GetRequestStream(); 
c = fs.Read(b, 0, cc); 
while (c > 0) 

    dataStream.Write(b, 0, c); 
    c = fs.Read(b, 0, cc); 

dataStream.Close(); 


解决方案 »

  1.   

    Timeout 是多少秒没有收到 应答就自动断开. 你一直上传,对方server没有给你应答信号. 即:你的httpwebresponed没用收到数据.
      

  2.   

    谢谢楼上的解答。不过问题不是这样的。在POST方法的情况下,你需要先对GetRequestStream返回的stream写入数据,全部写完之后,才可以调用GetResponseStream获得服务器的反馈信息。而且帮助里面说的很清楚,Timeout属性是针对GetRequestStream方法的。而我GetRequestStream已经成功返回,Timeout属性应该不会对Write方法有任何影响。