18910140161

微信支付快速生成签名sign

顺晟科技

2021-06-16 10:51:19

382

以微信支付接口为例,生成签名符号的方法(c#):

受保护字符串CreateSign(字符串appid、字符串正文、字符串设备信息,字符串mch_id、字符串nonce_str,字符串notify_url,字符串out_trade_no,字符串spbill_create_ip,字符串总计_费用,字符串贸易类型,字符串附上,字符串openID)

{

Dictionarystring,string SPAra=new dictionary string,string();

sPara .Add('appid ',appid);

sPara .添加(' attach ',attach);

sPara .添加(‘体’,体);

sPara .添加(' device_info ',device _ info);

sPara .添加(' mch_id ',mch _ id);

sPara .Add('nonce_str ',nonce _ str);

sPara .添加(' notify_url ',notify _ URL);

sPara .添加(' out_trade_no ',out _ trade _ no);

sPara .添加(' spbill_create_ip ',sp bill _ create _ IP);

sPara .添加(' total_fee ',total _ fee);

sPara .添加(' trade_type ',trade _ type);

if(!字符串IsNullOrEmpty(openID))

{

sPara .Add('openid ',openID);

}

StringBuilder sb=new StringBuilder();

sPara=sPara .OrderBy(o=o.Key).ToDictionary(o=o.Key,p=p . Value);

foreach(KeyValuePayrString,sPara中的字符串kvp)

{

某人(某人的简写)追加(字符串。格式(' {0}={1} ',kvp .关键kvp .值));

}

string stringA=sb .ToString().TrimEnd(');

string stringSignTemp=string .格式(' { 0 }键={1} ',字符串,配置管理器.AppSettings['WEIXIN_APIKey'].ToString());

字符串符号=实用程序普通帮手。GetMD5(stringsignttemp .ToString(),' utf-8 ').ToUpper();

返回符号;

}

只需要将参数传入方法,此方法会自动按照参数名美国信息交换标准代码码从小到大排序(字典序)

我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航