using System.Collections.Generic; using System.Linq; using System.Text; namespace Magic.Core; /// /// 字典扩展 /// public static class DictionaryExtensions { /// /// 将一个字典转化为 QueryString /// /// /// /// public static string ToQueryString(this Dictionary dict, bool urlEncode = true) { return string.Join("&", dict.Select(p => $"{(urlEncode ? p.Key?.UrlEncode() : "")}={(urlEncode ? p.Value?.UrlEncode() : "")}")); } /// /// 将一个字符串 URL 编码 /// /// /// public static string UrlEncode(this string str) { if (string.IsNullOrEmpty(str)) { return ""; } return System.Web.HttpUtility.UrlEncode(str, Encoding.UTF8); } /// /// 移除空值项 /// /// public static void RemoveEmptyValueItems(this Dictionary dict) { dict.Where(item => string.IsNullOrEmpty(item.Value)).Select(item => item.Key).ToList().ForEach(key => { dict.Remove(key); }); } }