作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
有没有办法在 System.Linq.Xml.XDocument.Load(string uri) 上设置超时?或者我应该使用 Implement C# Generic Timeout 中描述的技术吗? ?
最佳答案
据我所知,没有任何内置的东西。您可以使用 WebRequest 的实例自行获取 XML 内容(您可以设置超时)然后将 XML 数据直接传递给 XDocument.Load
方法。
从技术上讲,最“稳健”的解决方案是实现 XmlResolver你自己在 GetEntity() 中使用 WebRequest
执行超时。然后根据您的 XmlResolver
创建一个 XmlReader
并将 XmlReader
传递给 XDocument.Open
。
我说这会更“稳健”的原因是,如果 XML 文件引用 Web 服务器上的 其他 实体(例如 DTD),那么您可能希望超时适用于该实体以及不仅仅是最初的请求。
关于c# - 如何在 XDocument.Load(string uri) 上设置超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2970746/
我是一名优秀的程序员,十分优秀!