Подсчитать сколько выведенных пар?

197
14 января 2019, 03:10

подскажите пожалуйста как вывести в консоль количество пар, а не их имя?

using System;
using System.Net;
using Newtonsoft.Json;
using System.IO;
using System.Collections.Generic;
using Newtonsoft.Json.Linq;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BINANCE_0._1._1
{
    public class RateLimit
    {
        public string rateLimitType { get; set; }
        public string interval { get; set; }
        public int limit { get; set; }
    }
    public class Filter
    {
        public string filterType { get; set; }
        public string minPrice { get; set; }
        public string maxPrice { get; set; }
        public string tickSize { get; set; }
        public string minQty { get; set; }
        public string maxQty { get; set; }
        public string stepSize { get; set; }
        public string minNotional { get; set; }
        public int? limit { get; set; }
        public int? maxNumAlgoOrders { get; set; }
    }
    public class Symbol
    {
        public string symbol { get; set; }
        public string status { get; set; }
        public string baseAsset { get; set; }
        public int baseAssetPrecision { get; set; }
        public string quoteAsset { get; set; }
        public int quotePrecision { get; set; }
        public List<string> orderTypes { get; set; }
        public bool icebergAllowed { get; set; }
        public List<Filter> filters { get; set; }
    }
    public class RootObject
    {
        public string timezone { get; set; }
        public long serverTime { get; set; }
        public List<RateLimit> rateLimits { get; set; }
        public List<object> exchangeFilters { get; set; }
        public List<Symbol> symbols { get; set; }
    }
    class Program
    {
        static void Main(string[] args)
        {
            //заходим на биржу
            String url = "https://api.binance.com/api/v1/exchangeInfo";
            HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(url);
            HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse();
            Console.WriteLine(DateTime.Now.ToString() + " Подключение к бирже Бинанс " + (((HttpWebResponse)httpWebResponse).StatusDescription));
            string response;
            using (StreamReader streamReader = new StreamReader(httpWebResponse.GetResponseStream()))
            {
                response = streamReader.ReadToEnd();
            }
            //Json десериализация
            var Dynamic = JsonConvert.DeserializeObject<RootObject>(response);
            foreach (var item in Dynamic.symbols)
            {
                Console.WriteLine(DateTime.Now.ToString() + " " + item.symbol);
            }
            Console.ReadLine();
        }
    }
}

Скрин того, что выводит. Пары это BNBBTC, ETHBTC и т.д.

Если написать строку так

Console.WriteLine(Dynamic.symbols.Select(x => x.symbol).Distinct().Count());

то выводит

Answer 1

Количество уникальных пар:

Console.WriteLine(Dynamic.symbols.Select(x => x.symbol).Distinct().Count());

Общее количество пар: Console.WriteLine(Dynamic.symbols.Select(x => x.symbol).Count());

Например, для:

var Dynamic = new RootObject { symbols = new List<Symbol> { new Symbol { symbol = "ETHBTC" }, new Symbol {symbol = "ETHBTC"}, new Symbol {symbol = "LTCBTC"} } };

Получим:

READ ALSO
Периодическая очистка БД SQLite C#

Периодическая очистка БД SQLite C#

ПосоветуйтеИмею приложение с БД SQLite, в БД хранятся события

198
Как правильно предать datacontext из одного окна в другое

Как правильно предать datacontext из одного окна в другое

Всем здравствуйте, встала проблема, в моем приложении в датагрид есть данные, при клике на строку я открываю новое окно, но как сделать правильно...

167
Создание Instance для доступа c#

Создание Instance для доступа c#

Доброго времени суток

163
Управление контролами из ViewModel

Управление контролами из ViewModel

Простите за глупый вопрос, но что я делаю не так?

134