Exemplo n.º 1
0
            public string SendSimpleInvokeTx(neoAddress neoAddress, string addrTransfer, string contractHash, JArray inputJA)
            {
                //获取可用NEO UTXO
                Dictionary <string, List <neoHelper.neoTranstion.Utxo> > dir = GetUTXOByAddress(neoAddress.addrStr);

                if (!dir.ContainsKey("0x" + neoHelper.GAShash))
                {
                    return("没有GAS");
                }

                ThinNeo.Transaction TX = null;
                {
                    //构造转账部分交易(自己给自己)与手续费
                    TX = MakeTransferTx(dir["0x" + neoHelper.GAShash], addrTransfer, neoHelper.GAShash, 0, (decimal)0.00000000);

                    //构造合约调用部分
                    TX = MakeInvokeTxFromTransferTx(TX, contractHash, inputJA, (decimal)0.00000000);


                    //发送交易
                    string txHexStr = SignAndGetTxHex(neoAddress, TX);
                    var    res      = nelApi.sendRawTransaction(txHexStr);
                    return((string)res["result"][0]["txid"]);
                }
            }
Exemplo n.º 2
0
            public string SignAndGetTxHex(neoAddress neoAddress, Transaction TX)
            {
                //添加鉴证(签名)
                var signdata = ThinNeo.Helper_NEO.Sign(TX.GetMessage(), neoAddress.addrPriKeyBytes);
                var b        = ThinNeo.Helper.Bytes2HexString(neoAddress.addrPubKeyBytes);

                TX.AddWitness(signdata, neoAddress.addrPubKeyBytes, neoAddress.addrStr);

                //交易序列化
                var trandata    = TX.GetRawData();
                var strtrandata = ThinNeo.Helper.Bytes2HexString(trandata);

                return(strtrandata);
            }
 public NNS_register_sell(neoAddress neoAddressIn, string contractHashIn, string nelApiUrlIn)
 {
     cop = new contractOperate(neoAddressIn, contractHashIn, nelApiUrlIn);
 }
Exemplo n.º 4
0
 public NNS_domainCenter(neoAddress neoAddressIn, string contractHashIn, string nelApiUrlIn)
 {
     cop = new contractOperate(neoAddressIn, contractHashIn, nelApiUrlIn);
 }
Exemplo n.º 5
0
 public NNS_DEX_fixedSelling(neoAddress neoAddressIn, string contractHashIn, string nelApiUrlIn)
 {
     cop = new contractOperate(neoAddressIn, contractHashIn, nelApiUrlIn);
 }