Пример #1
0
        List <RunePage> GetRunePages(Summoner summoner)
        {
            List <RunePage> output = new List <RunePage>();

            using (var connection = GetConnection())
            {
                using (var pageSelect = Command("select {0} from rune_page where summoner_id = :summoner_id", connection, RunePage.GetFields()))
                {
                    pageSelect.Set("summoner_id", summoner.Id);

                    using (var pageReader = pageSelect.ExecuteReader())
                    {
                        while (pageReader.Read())
                        {
                            RunePage page = new RunePage(pageReader);
                            output.Add(page);
                        }
                    }
                }

                foreach (var page in output)
                {
                    using (var slotSelect = Command("select {0} from rune_slot where rune_page_id = :rune_page_id", connection, RuneSlot.GetFields()))
                    {
                        slotSelect.Set("rune_page_id", page.Id);

                        using (var slotReader = slotSelect.ExecuteReader())
                        {
                            while (slotReader.Read())
                            {
                                RuneSlot slot = new RuneSlot(slotReader);
                                page.Slots.Add(slot);
                            }
                        }
                    }

                    page.Slots.Sort((x, y) => x.Slot.CompareTo(y.Slot));
                }
            }

            return(output);
        }
Пример #2
0
        List<RunePage> GetRunePages(Summoner summoner)
        {
            List<RunePage> output = new List<RunePage>();
            using (var connection = GetConnection())
            {
                using (var pageSelect = Command("select {0} from rune_page where summoner_id = :summoner_id", connection, RunePage.GetFields()))
                {
                    pageSelect.Set("summoner_id", summoner.Id);

                    using (var pageReader = pageSelect.ExecuteReader())
                    {
                        while (pageReader.Read())
                        {
                            RunePage page = new RunePage(pageReader);
                            output.Add(page);
                        }
                    }
                }

                foreach (var page in output)
                {
                    using (var slotSelect = Command("select {0} from rune_slot where rune_page_id = :rune_page_id", connection, RuneSlot.GetFields()))
                    {
                        slotSelect.Set("rune_page_id", page.Id);

                        using (var slotReader = slotSelect.ExecuteReader())
                        {
                            while (slotReader.Read())
                            {
                                RuneSlot slot = new RuneSlot(slotReader);
                                page.Slots.Add(slot);
                            }
                        }
                    }

                    page.Slots.Sort((x, y) => x.Slot.CompareTo(y.Slot));
                }
            }

            return output;
        }