示例#1
0
        public async Task <string> WriteTransaction(
            IEnumerable <CreateRawTransactionTxIn> txIds,
            IEnumerable <CreateRawTransactionAmount> assets,
            object data = null)
        {
            var blobRes = await RpcClient.CreateRawTransactionAync(txIds, assets);

            await Task.Delay(500);

            var blob = blobRes.Result;

            if (data != null)
            {
                var jsonData = JsonConvert.SerializeObject(data);
                var bytes    = Encoding.UTF8.GetBytes(jsonData);
                blobRes = await RpcClient.AppendRawDataAsync(blob, MultiChainClient.FormatHex(bytes));

                await Task.Delay(500);

                blob = blobRes.Result;
            }
            var signedRes = await RpcClient.SignRawTransactionAsync(blob);

            await Task.Delay(500);

            var txId = await RpcClient.SendRawTransactionAsync(signedRes.Result.Hex);

            return(txId.Result);
        }