c# - Windows Phone - 如何获取 HTTP 状态代码?

标签 c# windows-phone-7

我不得不手动连接我的网络层。要针对 Web 服务运行查询,我使用以下代码:

public void RunService()
{
  string serviceUrl = Constants.URL_OF_SERVICE;
  WebRequest request = HttpWebRequest.Create(serviceUrl);
  request.BeginGetResponse(new AsyncCallback(Service_Completed), request);
}

private void Service_Completed(IAsyncResult result)
{
  try
  {
    WebRequest request = (WebRequest)(result.AsyncState);
    WebResponse response = request.EndGetResponse(result);

    // Continue doing stuff
  }
  catch (WebException ex1)
  {
    // How do I get the HTTP Status code here?
  }
}

发生错误时,我无法获取 HTTP 状态代码。有人可以告诉我如何在抛出 WebException 时获取 HTTP 状态代码吗?

谢谢!

最佳答案

使用 WebResponse part of the WebException :

catch (WebException ex1)
{
    using (HttpWebResponse response = (HttpWebResponse) ex1.Response)
    {
        if (response == null)
        {
            // Whatever
        }
        else
        {
            HttpStatusCode status = response.StatusCode;
            // Whatever
        }
    }
}

关于c# - Windows Phone - 如何获取 HTTP 状态代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7687719/

相关文章:

c# - 模拟 EF 核心 dbcontext 和 dbset

c# - Solr MoreLikeThis/mlt 处理程序返回 404 错误

animation - 如何在运行时在代码中创建流畅的动画?

silverlight - 如何注册以接收 Mvvm-Light 中的所有属性更改

c# - 为什么隔离存储在我的 WP7 应用程序中没有持久存在?

C# 在 ftping 之前重命名文件

c# - 扩展页面类

c# - 可为空的 DateTime 扩展引发 'does not contain a definition' 异常

c# - 使 VirtualizingStackPanel 不清理已加载的项目

silverlight - Window Phone 7 上的 Silverlight 编程与浏览器插件有何不同?