diff --git a/Apewer/Network/HttpHeaders.cs b/Apewer/Network/HttpHeaders.cs index 1873486..358af04 100644 --- a/Apewer/Network/HttpHeaders.cs +++ b/Apewer/Network/HttpHeaders.cs @@ -328,12 +328,32 @@ namespace Apewer.Network return Add(name, value); } + /// 按名称排序。 + public void Sort() => _list.Sort(); + + /// 按指定的方式排序。 + public void Sort(IComparer comparer) => _list.Sort(comparer ?? throw new ArgumentNullException(nameof(comparer))); + + /// 按指定的方式排序。 + public void Sort(Comparison comparison) => _list.Sort(comparison ?? throw new ArgumentNullException(nameof(comparison))); + /// 每个元素组成为新数组。 public HttpHeader[] ToArray() => _list.ToArray(); + /// 生成 数组。 + public StringPairs ToStringParis() + { + var sp = new StringPairs(); + foreach (var item in _list) sp.Add(item.Name, item.Value); + return sp; + } + /// public override string ToString() => $"Count = {_list.Count}"; + /// + public static implicit operator StringPairs(HttpHeaders headers) => headers?.ToStringParis(); + #endregion #region Json