How do you loop through a WebHeaderCollection
got from HttpWebResponse
in Windows phone 7 to get keys and values? We've tried Enumerator.Current
; with this, we are only getting the keys, not the values. We are doing this to get a redirected URL.
That's an awful collection, I think.
See MSDN sample. I'd prefer this one:
var headers = new System.Net.WebHeaderCollection(); headers.Add("xxx", "yyy"); headers.Add("zzz", "fff"); headers.Add("xxx", "ttt"); for(int i = 0; i < headers.Count; ++i) { string header = headers.GetKey(i); foreach(string value in headers.GetValues(i)) { Console.WriteLine("{0}: {1}", header, value); } }
Unfortunately there is no way to get values with order preserving between other headers.
P.S. Linq style (in LINQPad)
var items = Enumerable .Range(0, headers.Count) .SelectMany(i => headers.GetValues(i) .Select(v => Tuple.Create(headers.GetKey(i), v)) ); items.Dump();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With