Exemple #1
0
 private static string getAddrFromScriptHash(string scripitHash)
 {
     if (scripitHash != string.Empty)
     {
         return(ZoroHelper.GetAddressFromScriptHash(Helper.HexString2Bytes(scripitHash)));
     }
     else
     {
         return(string.Empty);
     }                        //ICO mintToken 等情况
 }
Exemple #2
0
        public static async Task <NEP5.AssetBalanceOfAddr> getNativeBalanceOfAsync(string chainHash, string assetid, string address)
        {
            NEP5.AssetBalanceOfAddr addr = new NEP5.AssetBalanceOfAddr(assetid, "", "");
            using (ScriptBuilder sb = new ScriptBuilder())
            {
                sb.EmitSysCall("Zoro.NativeNEP5.Call", "BalanceOf", UInt160.Parse(assetid), ZoroHelper.GetPublicKeyHashFromAddress(address));
                sb.EmitSysCall("Zoro.NativeNEP5.Call", "Decimals", UInt160.Parse(assetid));
                sb.EmitSysCall("Zoro.NativeNEP5.Call", "Symbol", UInt160.Parse(assetid));
                var info = await ZoroHelper.InvokeScript(sb.ToArray(), chainHash);

                var value = GetBalanceFromJson(info);
                addr.balance = value["balance"].ToString();
                addr.symbol  = value["symbol"].ToString();
                return(addr);
            }
        }