Esempio n. 1
0
        public void Import(int amount)
        {
            foreach (Site site in Enum.GetValues(typeof(Site)))
            {
                currentSite = site;
                Api.DefaultTarget = currentSite.ToName();
                Api.ApiKey = "J9pn2Pf2MEWl5OVgaCjmSw";

                QuestionsRouteMap target = new QuestionsRouteMap();
                target.Parameters.pagesize = 100;
                target.Parameters.page = 0;
                target.Parameters.body = true;
                target.Parameters.comments = true;
                target.Parameters.min = -1;
                target.JsonText = true;

                if (amount == 1)
                {
                    QuestionsResult result = target.GetResult();
                    foreach (Questions q in result.questions)
                    {
                        textwriter.WriteLine("Importing Question {0}", q.title);
                        ImportQuestion(q);
                    }
                }
                else
                {
                    QuestionsResult result = target.GetResult();
                    while ((result.page <= amount) && (result.questions.Length > 0))
                    {
                        textwriter.WriteLine("Loading page {0}", result.page);
                        foreach (Questions q in result.questions)
                        {
                            textwriter.WriteLine("Importing Question {0}", q.title);
                            ImportQuestion(q);
                        }
                        target.Parameters.page++;
                        result = target.GetResult();
                    }
                }
                textwriter.WriteLine("{0} api calls left: {1}", Enum.GetName(typeof(Site), site), Api.RemainingRequests);
            }
        }