private void FormDetails_Load(object sender, EventArgs e)
        {
            string address        = "";
            string bitcoinAddress = "";
            string hash           = "";
            string script         = "";
            string base58Type     = "";
            Type   type           = Address.GetType();

            using (new HourGlass())
            {
                switch (type.ToString())
                {
                case "NBitcoin.BitcoinScriptAddress":
                    BitcoinScriptAddress bsa = Address as BitcoinScriptAddress;
                    bitcoinAddress = bsa.ToString();
                    hash           = bsa.Hash.ToString();
                    script         = bsa.ScriptPubKey.ToString();
                    base58Type     = bsa.Type.ToString();
                    break;

                case "NBitcoin.BitcoinAddress":
                    BitcoinAddress ba = Address as BitcoinAddress;
                    bitcoinAddress = ba.ToString();
                    hash           = ba.Hash.ToString();
                    script         = ba.ScriptPubKey.ToString();
                    base58Type     = ba.Type.ToString();
                    break;

                case "NBitcoin.Stealth.BitcoinStealthAddress":
                    BitcoinStealthAddress stealth = Address as BitcoinStealthAddress;
                    bitcoinAddress = stealth.ToString();
                    hash           = stealth.ScanPubKey.Hash.ToString();
                    script         = stealth.ScanPubKey.ScriptPubKey.ToString();
                    base58Type     = stealth.Type.ToString();
                    break;

                case "NBitcoin.BitcoinColoredAddress":
                    BitcoinColoredAddress colored = Address as BitcoinColoredAddress;
                    address        = colored.ToString();
                    bitcoinAddress = colored.Address.ToString();
                    hash           = colored.Address.Hash.ToString();
                    script         = colored.ScriptPubKey.ToString();
                    base58Type     = colored.Type.ToString();
                    break;

                default:
                    textBoxType.Text = type.ToString();
                    break;
                }
            }

            textBoxAddress.Text        = address;
            textBoxBitcoinAddress.Text = bitcoinAddress;
            textBoxPubHash.Text        = hash;
            textBoxScriptPubKey.Text   = script;
            textBoxType.Text           = base58Type;

            textBoxBitcoinAddress.Focus();
        }
예제 #2
0
        public async Task <uint256> IssueAssetAsync(BitcoinAddress sourceAddress, BitcoinColoredAddress toAddress, long amount)
        {
            List <object> parameters = new List <object>();

            parameters.Add(sourceAddress.ToString());
            parameters.Add(amount.ToString());

            List <string> paramNames = new List <string>();

            paramNames.Add("address");
            paramNames.Add("amount");

            if (toAddress != null)
            {
                parameters.Add(toAddress.ToString());
                paramNames.Add("to");
            }

            var resp = await SendCommandAsync(RPCOperations.issueasset, paramNames.ToArray(), parameters.ToArray()).ConfigureAwait(false);

            return(uint256.Parse(resp.Result.ToString().Replace("\"", string.Empty)));
        }