4
        var hcHandler = new HttpClientHandler();
        //hcHandler.AllowAutoRedirect = false;
        var hc = new HttpClient(hcHandler);
        hc.DefaultRequestHeaders.Add("user-agent", "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)");
        String url = "http://passport.cnblogs.com/login.aspx";
        var task = hc.GetAsync(new Uri(url));
        HttpResponseMessage response = task.Result;

        string statusCode = response.StatusCode.ToString();

I want to get the statusCode in integer, how can I do?

陈黎栋John
  • 175
  • 1
  • 9
  • possible duplicate of [Getting Http Status code number (200, 301, 404, etc.) from HttpWebRequest and HttpWebResponse](http://stackoverflow.com/questions/1330856/getting-http-status-code-number-200-301-404-etc-from-httpwebrequest-and-ht) – Bhavik Patel Sep 02 '15 at 08:20

2 Answers2

3

HttpResponseMessage.StatusCode is a HttpStatusCode enum, whose underlying integer type is int, so you can just cast it:

int statusCode = (int)response.StatusCode;
Saeb Amini
  • 23,054
  • 9
  • 78
  • 76
3

HttpStatusCode is declared as an enum sort of like:

enum HttpStatusCode
{
     NotFound = 404,
     ...
}

Which means you can do it simply by casting:

int status = (int)HttpStatusCode.NotFound;
Simon Karlsson
  • 4,090
  • 22
  • 39