在对接第三方支付的时候,第三方会要求参数按照ASCII码从小到大排序。如下:
public static void requestPay() { Dictionary<string,string> dics = new Dictionary<string,string>(); dics.Add("amount",amount); dics.Add("callback_url",callback_url); dics.Add("goodsname",goodsname); dics.Add("merchno",merchno); dics.Add("notify_url",notify_url); dics.Add("ordno",ordno); dics.Add("organno",organno); dics.Add("version",version); dics.Add("paytype",paytype); getParamSrc(dics); }
public static String getParamSrc(Dictionary<string,string> paramsMap) { var vDic = (from objdic in paramsMap orderby objdic.Key ascending select objdic); StringBuilder str = new StringBuilder(); foreach (keyvaluePair<string,string> kv in vDic) { string pkey = kv.Key; string pvalue = kv.Value; str.Append(pkey + "=" + pvalue + "&"); } String result = str.ToString().Substring(0,str.ToString().Length - 1); return result; }
以上所述是小编给大家介绍的C# 参数按照ASCII码从小到大排序(字典序),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程小技巧网站的支持!