在对接第三方支付的时候,第三方会要求参数按照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码从小到大排序(字典序),希望对大家有所帮助
如对本文有疑问, 点击进行留言回复!!
使用Visual Studio2019创建C#项目(窗体应用程序、控制台应用程序、Web应用程序)
C#实现获取本地内网(局域网)和外网(公网)IP地址的方法分析
网友评论