远程主机强迫关闭了一个现有的连接,各位高手,这个问题怎么解决啊?

tsyj221 2017-04-19 05:27:56
远程主机强迫关闭了一个现有的连接,各位高手,这个问题怎么解决啊?
...全文
4330 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
tsyj221 2017-04-19
  • 打赏
  • 举报
回复
我的完整方法是这么写的,当下面的变量“i”为20888的时候就报这个错了,其实我的内容有25000行,我也很奇怪 private string GetResponse(string url, string key) { WebRequest request = WebRequest.Create(url); if (!string.IsNullOrEmpty(key)) { AddHeaders(request, key); } HttpWebResponse response = null; try { response = (HttpWebResponse)request.GetResponse(); } catch (WebException ex) { response = (HttpWebResponse)ex.Response; } string etag = response.Headers["ETag"]; string lastModified = response.Headers["LastModified"]; DeleteProduct(dateTimePicker1.Value.ToString("yyyyMM")); StreamReader reader1 = new StreamReader(response.GetResponseStream()); using (StreamReader reader = reader1) { String input; int i=0; while ((input = reader.ReadLine()) != null) { i++; if (i<4) { continue; } if ("".Equals(input)) { continue; } List<string> temp= GetCsv(input); Tb_Product product = new Tb_Product(); product.generate_year = temp[9].Replace(@"""", ""); product.generate_date = Convert.ToDateTime(temp[6].Replace(@"""", "")).ToString("yyyy-MM-dd"); product.generate_month = temp[9].Replace(@"""", "") + temp[7].Replace(@"""", "").PadLeft(2, '0'); product.product_name = temp[10].Replace(@"""", ""); product.Consumed_Quantity = Convert.ToDecimal(temp[16].Replace(@"""", "")); product.Resource_Rate = Convert.ToDecimal(temp[17].Replace(@"""", "")); product.department_name = temp[27].Replace(@"""", ""); AddProduct(product); AddDep(product.department_name); Application.DoEvents(); } } return ""; }
  • 打赏
  • 举报
回复
报这个错说明你所连接的服务器强制关闭了与你的连接。即服务器调用了与你的连接的Close函数,或者服务器程序被关闭了。看你的代码是在不停的读取服务器发来的数据,如果服务器没有挂掉或者断网(或者端口被占用),那就请确定在你全部收到数据之前服务器程序没有调用Close函数。

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧