public async Task AddClaim(string claim) { var function = contract.GetFunction("addClaim"); var transactionHash = await function.SendTransactionAsync(agentAccount.Address, claim, new Nethereum.Hex.HexTypes.HexBigInteger(900000)); await MineAndGetReceiptAsync(web3, transactionHash); }
private async void btn_queryAmount_Click(object sender, EventArgs e) { string accountAddress = this.tb_account.Text.Trim(); if (string.IsNullOrEmpty(accountAddress)) { MessageBox.Show("不能为空"); return; } var getBalance = NearCoinContract.GetFunction("balanceOf"); //方法名为智能合约中的方法名 var amount = await getBalance.CallAsync <Int64>(accountAddress); //注意单位Gwei this.tb_loglist.Text = amount.ToString(); }
// Get PlayCoin UserBalance public async Task <String> GetMyBalanceAsync() { if (!String.IsNullOrEmpty(player.Address)) { var balancefunction = contract.GetFunction("balanceOf"); var balance = await balancefunction.CallAsync <Int64>(player.Address); return(balance.ToString()); } else { throw new UserNotSetException(); } }
public async Task <string> SendTransaction(Nethereum.Contracts.Contract contract, string functionName, string from, HexBigInteger gas, HexBigInteger value, params object[] functionInput) { // TODO: name is invalid, gas is invalid var function = contract.GetFunction(functionName); Logger.Information($"Calling {functionName}() at gas {gas.Value.ToString()}"); try { return(await function.SendTransactionAsync(from, gas, value, functionInput)); } catch (Exception e) { Logger.Error(e, $"Failed to call {functionName}() at gas {gas}"); } return(null); }