问题描述
读取远程文件WebClient方法读取第一次正常,第二次读取时就卡住报操作超时问题,以下是代码WebClientwc=newWebClient();Streamsm=wc.OpenRead(AutoUpdaterFileName);//第二次到这里就卡住,后会报操作超时XmlTextReaderxml=newXmlTextReader(sm);while(xml.Read()){if(xml.Name=="UpdateTime"){LastUpdateTime=xml.GetAttribute("Date");break;}}xml.Close();sm.Close();wc.Dispose();求解答,怎么修改呢?
解决方案
解决方案二:
没人能够回答么??
解决方案三:
AutoUpdaterFileName内容是什么
解决方案四:
引用2楼yuwenge的回复:
AutoUpdaterFileName内容是什么
就是一个远程xml地址路径比如:http://192.168.1.30:8000/down/ceshi.xml
解决方案五:
你修改不了什么,应该去解决远端的超时问题。
解决方案六:
引用4楼sp1234的回复:
你修改不了什么,应该去解决远端的超时问题。
这个怎么弄呢,是我弄么?
解决方案七:
引用5楼a_taoge的回复:
Quote: 引用4楼sp1234的回复:
你修改不了什么,应该去解决远端的超时问题。这个怎么弄呢,是我弄么?
在浏览器里能访问这个地址么
解决方案八:
引用楼主a_taoge的回复:
读取远程文件WebClient方法读取第一次正常,第二次读取时就卡住报操作超时问题,以下是代码WebClientwc=newWebClient();Streamsm=wc.OpenRead(AutoUpdaterFileName);//第二次到这里就卡住,后会报操作超时XmlTextReaderxml=newXmlTextReader(sm);while(xml.Read()){if(xml.Name=="UpdateTime"){LastUpdateTime=xml.GetAttribute("Date");break;}}xml.Close();sm.Close();wc.Dispose();求解答,怎么修改呢?
你不是在做自动升级的吧?
解决方案九:
引用7楼ta_wuhen的回复:
Quote: 引用楼主a_taoge的回复:
读取远程文件WebClient方法读取第一次正常,第二次读取时就卡住报操作超时问题,以下是代码WebClientwc=newWebClient();Streamsm=wc.OpenRead(AutoUpdaterFileName);//第二次到这里就卡住,后会报操作超时XmlTextReaderxml=newXmlTextReader(sm);while(xml.Read()){if(xml.Name=="UpdateTime"){LastUpdateTime=xml.GetAttribute("Date");break;}}xml.Close();sm.Close();wc.Dispose();求解答,怎么修改呢?你不是在做自动升级的吧?
似的
解决方案十:
这个要考虑AutoUpdaterFileName的问题,这个路径有问题,即使你换别的方法,第二次应该也是超时
解决方案十一:
引用9楼linyustar的回复:
这个要考虑AutoUpdaterFileName的问题,这个路径有问题,即使你换别的方法,第二次应该也是超时
路径没有问题浏览器里可以打开看到文件内容
解决方案十二:
你的代码在我的测试环境中可以正常执行,运行多次,没有发生被卡住的现象。请问你两次运行时,AutoUpdaterFileName的值是一样的吗?如果是一样的话,那么建议去询问那个远程xml地址的管理员。
解决方案十三:
引用8楼a_taoge的回复:
Quote: 引用7楼ta_wuhen的回复:
Quote: 引用楼主a_taoge的回复:
读取远程文件WebClient方法读取第一次正常,第二次读取时就卡住报操作超时问题,以下是代码WebClientwc=newWebClient();Streamsm=wc.OpenRead(AutoUpdaterFileName);//第二次到这里就卡住,后会报操作超时XmlTextReaderxml=newXmlTextReader(sm);while(xml.Read()){if(xml.Name=="UpdateTime"){LastUpdateTime=xml.GetAttribute("Date");break;}}xml.Close();sm.Close();wc.Dispose();求解答,怎么修改呢?你不是在做自动升级的吧?
似的
我最近也在做这个。。。你是不是在访问的服务器XML的时候,服务器的某个操作也操作了这个XML?还有想要使用XML,可以直接:XElementroot=XElement.Load(AutoUpdaterFileName);//下面是操作
解决方案十四:
引用10楼a_taoge的回复:
Quote: 引用9楼linyustar的回复:
这个要考虑AutoUpdaterFileName的问题,这个路径有问题,即使你换别的方法,第二次应该也是超时路径没有问题浏览器里可以打开看到文件内容
我的意思是,这个路径的性能问题,连续访问可能就会出现超时
解决方案十五:
你可以尝试下更换至WebRequest当然是我个人还是建议你将数据Download下后再分析为XmlDocument
其他方案:
引用14楼Windowsvipcuvs的回复:
你可以尝试下更换至WebRequest当然是我个人还是建议你将数据Download下后再分析为XmlDocument
试过了一样在下在那里就卡住了
其他方案:
我发现一个问题,这个方法第一次运行运行几次都没问题,如:窗体加载事件里,运行这个方法几次都没问题加载成功后,如果点击一个按钮(也是运行这个方法)就会卡住,操作超时