Esempio n. 1
0
        public static void dumpProducers()
        {
            StringBuilder tsvproducers = new StringBuilder();
            //var producers = core.getProducersAsync().Result;

            var producers = new EOS_Table <EOSProducer_row>(HOST).getAllTableRecordsAsync().Result;

            foreach (var _producer in producers)
            {
                string line = string.Format("{0}\t{1}\t{2}\t{3}\t{4}", _producer.owner, _producer.total_votes, _producer.is_active, _producer.unpaid_blocks, _producer.url);
                tsvproducers.AppendLine(line);
                //logger.Debug(line);
            }
            logger.Debug("Write {0} records to disk", producers.Count);
            File.WriteAllText("producerReport.txt", tsvproducers.ToString());

            IEnumerable <EOSProducer_row> query = producers.OrderByDescending(producer => producer.total_votes_long);

            StringBuilder tsvTop21producers         = new StringBuilder();
            StringBuilder tsvTop21producersNameOnly = new StringBuilder();
            int           countTop21 = 0;

            foreach (var _producer in query)
            {
                countTop21++;
                tsvTop21producers.AppendLine(string.Format("{0}\t{1}\t{2}\t{3}\t{4}", _producer.owner, _producer.total_votes, _producer.is_active, _producer.unpaid_blocks, _producer.url));
                tsvTop21producersNameOnly.AppendLine(string.Format("{0}", _producer.owner));
                if (countTop21 == 21)
                {
                    break;
                }
            }

            File.WriteAllText("Top21ProducerReport.txt", tsvTop21producers.ToString());
            File.WriteAllText("Top21ProducerReportNameOnly.txt", tsvTop21producersNameOnly.ToString());
        }