在对接第三方支付的时候,第三方会要求参数按照ASCII码从小到大排序。如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
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);
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
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码从小到大排序(字典序),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://www.cnblogs.com/mrzhoushare/p/6068708.html