<PackageReference Include="Azure.Storage.Blobs" Version="12.25.1" />

UriQueryParamsCollection

sealed class UriQueryParamsCollection : Dictionary<string, string>
using System; using System.Collections.Generic; using System.Globalization; using System.Net; using System.Text; namespace Azure.Storage { internal sealed class UriQueryParamsCollection : Dictionary<string, string> { public UriQueryParamsCollection() : base((IEqualityComparer<string>)StringComparer.OrdinalIgnoreCase) { } public UriQueryParamsCollection(string encodedQueryParamString) : base((IEqualityComparer<string>)StringComparer.OrdinalIgnoreCase) { string text = encodedQueryParamString; if (text == null) throw Errors.ArgumentNull("encodedQueryParamString"); encodedQueryParamString = text; if (encodedQueryParamString.StartsWith("?", true, CultureInfo.InvariantCulture)) encodedQueryParamString = encodedQueryParamString.Substring(1); string[] array = encodedQueryParamString.Split(new char[1] { '&' }, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < array.Length; i++) { string[] array2 = array[i].Split(new char[1] { '=' }, 2); if (array2.Length == 1) Add(WebUtility.UrlDecode(array2[0]), null); else Add(WebUtility.UrlDecode(array2[0]), WebUtility.UrlDecode(array2[1])); } } public override string ToString() { StringBuilder stringBuilder = new StringBuilder(); using (Enumerator enumerator = GetEnumerator()) { while (enumerator.MoveNext()) { KeyValuePair<string, string> current = enumerator.Current; if (stringBuilder.Length > 0) stringBuilder.Append('&'); stringBuilder.Append(WebUtility.UrlEncode(current.Key)).Append('=').Append(WebUtility.UrlEncode(current.Value)); } } return stringBuilder.ToString(); } } }