Lar*_*ien 6 .net c# timeout linq-to-xml
有没有办法在System.Linq.Xml.XDocument.Load(string uri)上设置超时?或者我应该使用实现C#通用超时中描述的技术?
据我所知,没有任何内置内置功能.您可以使用WebRequest实例(可以设置超时)自行获取XML内容,然后将XML数据直接传递给XDocument.Load方法.
从技术上讲,最"稳健"的解决办法是实行的XmlResolver自己它采用了WebRequest在GetEntity()的实现做了超时.然后创建一个XmlReader基于你的XmlResolver并传递XmlReader给XDocument.Open.
我之所以说它更"健壮"的原因是,如果XML文件引用了Web服务器上的其他实体(例如DTD),那么您可能希望超时也适用于此而不仅仅是初始请求.
| 归档时间: | 
 | 
| 查看次数: | 4436 次 | 
| 最近记录: |