예제 #1
0
        private Ranks GetRanks(NameTypes tp)
        {
            var votes = Location.EnumerateFiles(string.Format("*.{0}.xml", tp.ToString().ToLowerInvariant()));
            var vetos = Location.EnumerateFiles(string.Format("*.{0}.vetos.txt", tp.ToString().ToLowerInvariant()));

            var ranks = new Ranks(
                Names.FromDirectory(Location, tp).Distinct(),
                votes.SelectMany(file => Votes.Load(file)),
                vetos.SelectMany(file => Vetos.Load(file)))
            {
                NameType = tp
            };

            ranks.Recalculate();
            return(ranks);
        }
예제 #2
0
        /// <see cref="SurveyIO.Load()"/>
        public void Load(BinaryReader reader)
        {
            // Carrega a questão da enquete e depois cada uma das opções.
            Question = reader.ReadString();

            options = new Dictionary <string, Option>();
            int count = reader.ReadInt32();

            for (int i = 0; i < count; i++)
            {
                Option option = new Option();

                // Chama o Load() de Option para ler a opção.
                option.Load(reader);

                options[option.Id] = option;
            }

            // Carrega os votos da enquete.
            votes.Load(reader);
        }