public static async Task <List <Utxo> > GetUtxosToPay(string api, string _addr, string assetid, double number) { MyJson.JsonNode_Object response = (MyJson.JsonNode_Object)MyJson.Parse(await Helper.HttpGet(api + "?method=getutxostopay&id=1¶ms=[" + "'" + _addr + "','" + assetid + "'," + number + "]")); if (response.ContainsKey("result") == false) { return(new List <Utxo>()); } MyJson.JsonNode_Array resJA = (MyJson.JsonNode_Array)response["result"]; List <Utxo> list = new List <Utxo>(); foreach (MyJson.JsonNode_Object j in resJA) { Utxo utxo = new Utxo(j["addr"].ToString(), new ThinNeo.Hash256(j["txid"].ToString()), j["asset"].ToString(), decimal.Parse(j["value"].ToString()), int.Parse(j["n"].ToString())); list.Add(utxo); } return(list); }
//获取地址的utxo来得出地址的资产 public static async Task <Dictionary <string, List <Utxo> > > GetBalanceByAddress(string api, string _addr) { MyJson.JsonNode_Object response = (MyJson.JsonNode_Object)MyJson.Parse(await Helper.HttpGet(api + "?method=getutxo&id=1¶ms=['" + _addr + "']")); MyJson.JsonNode_Array resJA = (MyJson.JsonNode_Array)response["result"]; Dictionary <string, List <Utxo> > _dir = new Dictionary <string, List <Utxo> >(); foreach (MyJson.JsonNode_Object j in resJA) { Utxo utxo = new Utxo(j["addr"].ToString(), new ThinNeo.Hash256(j["txid"].ToString()), j["asset"].ToString(), decimal.Parse(j["value"].ToString()), int.Parse(j["n"].ToString())); if (_dir.ContainsKey(j["asset"].ToString())) { _dir[j["asset"].ToString()].Add(utxo); } else { List <Utxo> l = new List <Utxo>(); l.Add(utxo); _dir[j["asset"].ToString()] = l; } } return(_dir); }