public ApiResult <BalanceCS> Balance(string Public) { ApiResult <BalanceCS> Res = new ApiResult <BalanceCS> { Result = null }; byte[] PublicKey; try { PublicKey = Base58CheckEncoding.DecodePlain(Public); } catch (Exception) { Res.Message = "PublicKey error"; return(Res); } WalletBalanceGetResult Balance = _connect.WalletBalanceGet(PublicKey); if (Balance.Status.Code > 0 && Balance.Status.Message != "Not found") { Res.Message = Balance.Status.Message; return(Res); } TokenBalancesResult Tokens = _connect.TokenBalancesGet(PublicKey); if (Tokens.Status.Code > 0 && Balance.Status.Message != "Not found") { Res.Message = Tokens.Status.Message; return(Res); } Res.Result = new BalanceCS { CS = $"{Balance.Balance.Integral}.{FractionToStr(Balance.Balance.Fraction)}", Tokens = Tokens.Balances.Select(BalanceTokenModel).ToList(), PublicKey = Public }; return(Res); }
public List <WalletAllBalance> Balance(byte[] PublicKey) { List <WalletAllBalance> Res = new List <WalletAllBalance>(); WalletBalanceGetResult CS_Bal = CS_Balance(PublicKey); if (CS_Bal.Status.Code > 0) { throw new Exception(CS_Bal.Status.Message); } TokenBalancesResult Token_Balance = TokenBalance(PublicKey); if (Token_Balance.Status.Code > 0) { throw new Exception(Token_Balance.Status.Message); } Res.Add(WalletAllBalance.Create(BcToDouble(CS_Bal.Balance))); foreach (TokenBalance item in Token_Balance.Balances) { //Delete trycatch block try { Res.Add(WalletAllBalance.Create( Convert.ToDouble(item.Balance), Base58CheckEncoding.EncodePlain(item.Token), item.Code, item.Name) ); } catch (Exception) { Console.WriteLine(""); } } return(Res); }