Asp.net 检索HttpWebResponse并将其放入XDocument的有效方法
有一个本地服务,我需要从中使用生成的XML文档流。尽管端点本身不是REST服务。我想确保下面概述的方法是将响应返回到Asp.net 检索HttpWebResponse并将其放入XDocument的有效方法,asp.net,linq,httpwebrequest,httpwebresponse,linq-to-xml,Asp.net,Linq,Httpwebrequest,Httpwebresponse,Linq To Xml,有一个本地服务,我需要从中使用生成的XML文档流。尽管端点本身不是REST服务。我想确保下面概述的方法是将响应返回到XDocument中的最有效的方法 Uri requestUri = null; Uri.TryCreate(String.Format(SearchAddress, filter), UriKind.Absolute, out requestUri); NetworkCredential nc = new NetworkCredential("Login", "
XDocument
中的最有效的方法
Uri requestUri = null;
Uri.TryCreate(String.Format(SearchAddress, filter),
UriKind.Absolute, out requestUri);
NetworkCredential nc =
new NetworkCredential("Login", "Password");
CredentialCache cCache = new CredentialCache();
cCache.Add(requestUri, "Basic", nc);
HttpWebRequest request =
(HttpWebRequest)HttpWebRequest.Create(requestUri);
request.Credentials = cCache;
request.PreAuthenticate = true;
request.Method = WebRequestMethods.Http.Get;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
XDocument xDoc =
XDocument.Load(new StreamReader(response.GetResponseStream()));
如果您想要同步请求,那么我认为是的。
但处理WebException是个好主意。 在WebException.Response.GetResponseStream()中,应该有一个HTTP/HTML错误页或soapfault 异步请求
//启动响应流的异步检索…
var result=request.BeginGetResponse(…)
//设置超时回调方法,BeginGetResponse不会超时…
ThreadPool.RegisterWaitForSingleObject(result.AsyncWaitHandle,…)
处理
WebException
的好主意。也就是说,对于异步请求,您建议的修改是什么?