示例#1
0
        static void InteractiveExchange(string from, string to, ExchangeFunction exchange)
        {
            Console.Write(String.Format("Enter amount of {0}: ", from.ToUpper()));
            double value = ReadCurrencyValue();

            Console.WriteLine(String.Format("{0} {1} = {2} {3}", value.ToString("F2"), from, exchange(value).ToString("F2"), to));
            Console.ReadKey();
        }
        public Task <TransactionReceipt> ExchangeRequestAndWaitForReceiptAsync(string txOwner, string exchangeMarketAddress, string sourceTokenAddress, string targetTokenAddress, BigInteger exchangerate, BigInteger tokenAmount, CancellationTokenSource cancellationToken = null)
        {
            var exchangeFunction = new ExchangeFunction();

            exchangeFunction.TxOwner = txOwner;
            exchangeFunction.ExchangeMarketAddress = exchangeMarketAddress;
            exchangeFunction.SourceTokenAddress    = sourceTokenAddress;
            exchangeFunction.TargetTokenAddress    = targetTokenAddress;
            exchangeFunction.Exchangerate          = exchangerate;
            exchangeFunction.TokenAmount           = tokenAmount;
            exchangeFunction.Gas = new BigInteger(9999999);
            return(ContractHandler.SendRequestAndWaitForReceiptAsync(exchangeFunction, cancellationToken));
        }
        public Task <string> ExchangeRequestAsync(string txOwner, string exchangeMarketAddress, string sourceTokenAddress, string targetTokenAddress, BigInteger exchangerate, BigInteger tokenAmount)
        {
            var exchangeFunction = new ExchangeFunction();

            exchangeFunction.TxOwner = txOwner;
            exchangeFunction.ExchangeMarketAddress = exchangeMarketAddress;
            exchangeFunction.SourceTokenAddress    = sourceTokenAddress;
            exchangeFunction.TargetTokenAddress    = targetTokenAddress;
            exchangeFunction.Exchangerate          = exchangerate;
            exchangeFunction.TokenAmount           = tokenAmount;

            return(ContractHandler.SendRequestAsync(exchangeFunction));
        }
示例#4
0
        public async Task ExchangeAssetsAsync(string accountAddress, int tokenId1, int tokenId2)
        {
            _privateKeyStorage.TryGetValue(_account.Address, out var pk);
            var account = new Account(pk);
            var web3    = _web3ProviderService.GetWeb3(account);
            var address = _account.Address;

            var exchangeHandler = web3.Eth.GetContractTransactionHandler <ExchangeFunction>();

            var exchange = new ExchangeFunction
            {
                User1    = address,
                User2    = accountAddress,
                TokenId1 = tokenId1,
                TokenId2 = tokenId2
            };

            await exchangeHandler.SendRequestAndWaitForReceiptAsync(ContractAddress, exchange);
        }
 public Task <TransactionReceipt> ExchangeRequestAndWaitForReceiptAsync(ExchangeFunction exchangeFunction, CancellationTokenSource cancellationToken = null)
 {
     return(ContractHandler.SendRequestAndWaitForReceiptAsync(exchangeFunction, cancellationToken));
 }
 public Task <string> ExchangeRequestAsync(ExchangeFunction exchangeFunction)
 {
     return(ContractHandler.SendRequestAsync(exchangeFunction));
 }