有人可以帮助我使用 C# .NET 中的 Nethereum 包成功发送 ERC20 令牌吗?我能够成功获得帐户余额,但是当我尝试发送时,它就在那里......
我正在使用 Infura.io 项目 api 也具有以下安全性:
- eth_accounts
- eth_call
- eth_getBalance
- eth_getTransactionReceipt
- eth_sendRawTransaction
var client = new EthClient(new RpcUrl("https://mainnet.infura.io/v3/-MyProjectID-"));
这是我正在使用的代码:
--调用transfer方法
/* transfer 100 tokens */
var transactionHashTask = client.transferTokens(coinOwnerAddress, coinOwnerPrivateKey, toAddress, contractAddress, 0);
var transactionHash = transactionHashTask.Result.ToString();
lblTransHash.Text = "Transaction hash: " + transactionHash;
-- 包含实际方法的代码
public async Task<string> transferTokens(string senderAddress, string privateKey, string receiverAddress, string contractAddress, UInt64 tokens)
{
var transactionMessage = new TransferFunction()
{
FromAddress = senderAddress,
To = receiverAddress,
AmountToSend = tokens
};
var transferHandler = web3.Eth.GetContractTransactionHandler<TransferFunction>();
Task<string> transactionHashTask = transferHandler.SendRequestAsync(contractAddress,transactionMessage);
return await transactionHashTask;
}