我这里使用的是C,昨天心血来潮写的一个小工具。技术架构这边用的是Nethereum包然后节点集群用的是Infura.io注册就有一个apikey,有调用次数限制,但是日常的开发测试肯定是足够了。一.申请Infura.io账户,并获得APIKEY二.绘制UI我的UI长
我这里使用的是C#,昨天心血来潮写的一个小工具。
技术架构这边用的是Nethereum包 然后节点集群用的是Infura.io
注册就有一个apikey,有调用次数限制,但是日常的开发测试肯定是足够了。
<!--StartFragment-->
<!--EndFragment-->
<!--StartFragment-->
<!--EndFragment-->
<!--StartFragment-->
我的UI长这个样,自己灵机一动设计的,有点子不好看,但是我主要是专注于功能,UI的话,后期再去优化吧。
<!--EndFragment-->
<!--StartFragment-->
/// <summary>
/// 实例化web3对象
/// </summary>
/// <returns></returns>
private static Web3 CreateWeb3()
{
// 以太坊节点的RPC URL,使用Infura.io的URL
string rpcUrl = "https://mainnet.infura.io/v3/你申请的projectid";
Uri u = new Uri(rpcUrl);
Web3 web3 = new Web3(new RpcClient(u));
return web3;
}
这里把v3/后面的ID替换成你申请的ID就好了。
<!--StartFragment-->
我这边用到的包是这些
<!--EndFragment-->
<!--StartFragment-->
<!--EndFragment-->
/// <summary>
/// 根据RPC地址查询指定地址
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_cx_Click(object sender, EventArgs e)
{
Web3 web3 = CreateWeb3();
string address_str = "";
if (this.adress.Text == "")
{
MessageBox.Show("请输入以太坊地址");
}
else {
address_str = this.adress.Text;
}
// 要查询的账户地址
string accountAddress = address_str;
// 查询账户余额
var balance = web3.Eth.GetBalance.SendRequestAsync(accountAddress);
UnitConversion tunit = new UnitConversion();
// 将余额转换为Ether
decimal etherBalance = tunit.FromWei(balance.Result.Value);
this.balance.Text = etherBalance + "ETH";
}
<!--StartFragment-->
这样就能查询出地址余额。
<!--EndFragment-->
<!--StartFragment-->
更多功能后续更新,关注后一起来跟我学习从零搭建区块链工具系统!
<!--EndFragment-->
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!