// #region Send // // public async Task<string> Send(string network, string seed, int index, string receiver, decimal amount, ulong nonce) // { // var key = new Key(seed.HexDecode(), index); // var wallet = key.ToWallet(); // // var txAmount = (ulong) (amount * (decimal) MoneyUnit.BTC); // // var tx = new TransactionRequest() // .AddSender(wallet.Base58Address, key, txAmount + Constants.Commission, nonce) // .AddTransfer(receiver, txAmount) // .Sign(); // // await _httpService.Send(network, tx); // return tx.Hash; // } // // public async Task<string> Send(string network, string seed, int index, string receiver, decimal amount, bool useUnconfirmed = false) // { // var key = new Key(seed.HexDecode(), index); // var wallet = key.ToWallet(); // // var nonceDto = await _httpService.GetNonce(network, wallet.Base58Address); // var nonce = nonceDto.ConfirmedNonce; // if (useUnconfirmed) // { // nonce = nonceDto.UnconfirmedNonce; // } // var txAmount = (ulong) (amount * (decimal) MoneyUnit.BTC); // // var tx = new TransactionRequest() // .AddSender(wallet.Base58Address, key, txAmount + Constants.Commission, nonce) // .AddTransfer(receiver, txAmount) // .Sign(); // // await _httpService.Send(network, tx); // return tx.Hash; // } // // #endregion #region Contracts public async Task <T> StaticCall <T>(string network, string address, ContractFunctionCall call) { var payload = call.ArgsCall.Aggregate(call.Function.NameHex, (current, argCall) => current + argCall.ToPayloadHex()); var req = new ContractStaticCallRequestDto { Address = address, Payload = payload }; var res = await _httpService.ContractStaticCall(network, req); return(res.Result.ConvertTo <T>()); }
public async Task StaticCallTest2() { var call = new ContractFunctionCall(Erc20.Name); var res = await _service.StaticCall <string>(Network, "SXY3xT8FnCfNTTZF3si777QyXAdwALP3QSu", call); var json = JsonSerializer.Serialize(res); _testOutputHelper.WriteLine(json); var call2 = new ContractFunctionCall(Erc20.Decimals); var res2 = await _service.StaticCall <byte>(Network, "SXY3xT8FnCfNTTZF3si777QyXAdwALP3QSu", call2); var json2 = JsonSerializer.Serialize(res2); _testOutputHelper.WriteLine(json2); }