如何将常用工具类为?

摘要:解析查询字符串<summary>解析查询字符串<summary> private NameValueCollection
解析查询字符串 /// <summary> /// 解析查询字符串 /// </summary> private NameValueCollection GetQueryString(string queryString, Encoding encoding, bool isEncoded) { var result = new NameValueCollection(StringComparer.OrdinalIgnoreCase); if (!string.IsNullOrEmpty(queryString)) { int count = queryString.Length; for (int i = 0; i < count; i++) { int startIndex = i; int index = -1; while (i < count) { char item = queryString[i]; if (item == '=') { if (index < 0) { index = i; } } else if (item == '&') { break; } i++; } string key = null; string value = null; if (index >= 0) { key = queryString.Substring(startIndex, index - startIndex); value = queryString.Substring(index + 1, (i - index) - 1); } else { key = queryString.Substring(startIndex, i - startIndex); } if (isEncoded) { result[HttpUtility.UrlDecode(key, encoding)] = HttpUtility.UrlDecode(value, encoding); } else { result[key] = value; } if ((i == (count - 1)) && (queryString[i] == '&')) { result[key] = string.Empty; } } } return result; } 解析Key=Value,字符串 /// <summary> /// 解析Key=Value,字符串 /// </summary> private NameValueCollection GetContentString(string queryString) { var result = new NameValueCollection(StringComparer.OrdinalIgnoreCase); if (string.IsNullOrEmpty(queryString)) return result; int count = queryString.Length; for (int i = 0; i < count; i++) { int startIndex = i; int index = -1; while (i < count) { char item = queryString[i]; if (item == '=') { if (index < 0) { index = i; } } else if (item == ',') { break; } i++; } string key = null; string value = null; if (index >= 0) { key = queryString.Substring(startIndex, index - startIndex).Trim(); value = queryString.Substring(index + 1, (i - index) - 1); } else { key = queryString.Substring(startIndex, i - startIndex).Trim(); } result[key] = value; if ((i == (count - 1)) && (queryString[i] == ',')) { result[key] = string.Empty; } } return result; } 获取字符串的MD5值 public static string ToMd5(this string str) { using var md5 = MD5.Create(); var inputBytes = Encoding.UTF8.GetBytes(str); var hashBytes = md5.ComputeHash(inputBytes); var sb = new StringBuilder(); foreach (var hashByte in hashBytes) { sb.Append(hashByte.ToString("X2")); } return sb.ToString(); } 去除多余0且整数保留一位小数 /// <summary> /// 去除多余0且整数保留一位小数 /// </summary> private decimal CalculaValue(decimal val, int degit = 2) { double money = (double)Math.Round(val, degit, MidpointRounding.AwayFromZero); var moneyStr = money.ToString(); if (moneyStr.IndexOf('.') < 0) moneyStr += ".0"; return decimal.Parse(moneyStr); }