internal static long? ParseHeaderValue(IDictionary<string, string> dict, params string[] keys) { foreach (var key in keys) { if (!dict.ContainsKey(key)) continue; long result; if (long.TryParse(dict[key], out result)) return result; } return null; }