基本信息
源码名称:微信当面付(c#源码)
源码大小:1.99M
文件格式:.zip
开发语言:C#
更新时间:2020-03-16
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using WxPayAPI;
using ThoughtWorks.QRCode.Codec;
namespace Weixi
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
string out_trade_no = string.Empty;
string money = string.Empty;
private void sub()
{
System.Random random = new Random();
int iResult;
iResult = random.Next(100000000, 999999999);
NativePay nativePay = new NativePay();
out_trade_no = textBox1.Text;
money = textBox2.Text;
try
{
//生成扫码支付模式二url
string url2 = nativePay.GetPayUrl(iResult.ToString(), out out_trade_no, ((Convert.ToSingle(money) * 100)).ToString("0"));
Bitmap bmp = null;
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
qrCodeEncoder.QRCodeScale = 4;
//int version = Convert.ToInt16(cboVersion.Text);
qrCodeEncoder.QRCodeVersion = 7;
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
bmp = qrCodeEncoder.Encode(url2);
pictureBox1.Image = bmp;
}
catch
{
MessageBox.Show("出错");
}
}
private void button1_Click(object sender, EventArgs e)
{
sub();
}
private void button3_Click(object sender, EventArgs e)
{
textBox1.Text = "";
textBox2.Text = "";
}
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
getWeixiOrder(out_trade_no);
}
//查询微信是否付款成功
private bool getWeixiOrder(string _out_trade_no)
{
if (string.IsNullOrEmpty(_out_trade_no))
{
MessageBox.Show("微信订单号和商户订单号至少填写一个,微信订单号优先!");
return false;
}
//调用订单查询接口,如果内部出现异常则在页面上显示异常原因
try
{
string result = OrderQuery.Run("", out_trade_no);//调用订单查询业务逻辑
// .Text = result;
textBox3.Text = result;
if (result.Contains("trade_state=SUCCESS"))
return true;
return false;
}
catch (WxPayException ex)
{
MessageBox.Show(ex.ToString());
return false;
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
return false;
}
}
}
}