Exemple #1
0
 public static void getschdata(string title, string isbn)
 {
     TitleIsbn13 ti13 = new TitleIsbn13();
     ti13.isbn13 = isbn;
     ti13.title = title;
     List<TitleIsbn13> ti13s =  new List<TitleIsbn13>();
     ti13s.Add(ti13);
     getschdata(ti13s);
 }
Exemple #2
0
        public static void getcsmdata(string isbn)
        {
            //create new TitleIsbn13 to pass to getscsmdata
            List<TitleIsbn13> ti13s = new List<TitleIsbn13>();

            TitleIsbn13 ti13 = new TitleIsbn13();
            ti13.isbn13 = isbn;

            bool exists = false;
            using (LexileTitlesEntities lr = new LexileTitlesEntities())
            {
                List<CommonSenseMedia> csms = new List<CommonSenseMedia>(from c in lr.CommonSenseMedias
                                                                         where c.Isbn13 == isbn
                                                                         select c);
                if (csms.Count > 0)
                {
                    // get title from LexileTitles
                    LexileTitle lex = (from l in lr.LexileTitles
                                       where l.Isbn13 == isbn
                                       select l).First();

                    ti13.title = lex.Title;

                    exists = true;

                }

            }

            if (exists)
            {
                ti13s.Add(ti13);

                getcsmdata(ti13s);
            }
        }
        public static List<UploadResult> postNewTitle(List<LexileDump> lexs)
        {
            List<UploadResult> uress = new List<UploadResult>();

            //first do Lexile post for each one
            foreach (LexileDump lex in lexs)
            {
                // post a new title to all targets
                StandardResult lexres = postNewLexile(lex);
                UploadResult ures = new UploadResult();
                ures.isbn13 = lexres.isbn13;
                ures.lexresult = lexres.message;

                uress.Add(ures);
            }

            // now we have done all Lexile posts and want to do each scrape in turn
            // List of TitleIsbn13 is used to pass to the scrape methods
            List<TitleIsbn13> tis = new List<TitleIsbn13>();
            foreach (UploadResult ures in uress)
            {
                TitleIsbn13 ti = new TitleIsbn13();
                ti.isbn13 = ures.isbn13;
                ti.title = ures.title;
                tis.Add(ti);

            }

            //postCommonSenseMedia
            List<StandardResult> csmress = DataAcquisition.getcsmdata(tis);

            //post Barnes
            List<StandardResult> bnress = DataAcquisition.getbndata(tis);

            //post Scholastic
            //List<StandardResult> schress = DataAcquisition.getschdata(tis);

            // update UploadResult with each scrape's result
            foreach (UploadResult ures in uress)
            {
                ures.csmresult = csmress.Find(x => x.isbn13 == ures.isbn13).message;
                //ures.bnresult = bnress.Find(x => x.isbn13 == ures.isbn13).message;
                //ures.schresult = schress.Find(x => x.isbn13 == ures.isbn13).message;
            }

            return uress;
        }