public async override Task <ActionResult <IEnumerable <New> > > GetTopNews([FromQuery] int quantity, [FromQuery] string subject) { var result = new Result(); if (quantity > 0) { Website bds = new CofeeLand(); if (subject == "da") { bds = new CofeeLandDa(); } else if (subject == "bds") { bds = new CofeeLandBds(); } var news = await bds.GetTopNews(quantity, subject); if (news != null) { foreach (var n in news) { result.Total++; var existed = _context.News.FirstOrDefault(e => e.Title.ToLower() == n.Title); if (existed != null) { continue; } try { var post = PostCreateModel.Create(n); if (post == null) { continue; } Wordpress.CreateAsync(post); _context.News.Add(n); result.Published++; } catch (System.Exception e) { continue; } // } } await _context.SaveChangesAsync(); return(Ok(result)); } return(NotFound()); } return(BadRequest(nameof(quantity))); }
public async override Task <ActionResult <IEnumerable <New> > > GetTopNews([FromQuery] int quantity, [FromQuery] string subject) { if (quantity > 0) { Website bds = new DanTri(); var news = await bds.GetTopNews(quantity, subject); if (news != null) { foreach (var n in news) { var existed = _context.News.FirstOrDefault(e => e.Title.ToLower() == n.Title); if (existed != null) { continue; } try { var post = PostCreateModel.Create(n); if (post == null) { continue; } Wordpress.CreateAsync(post); _context.News.Add(n); } catch (System.Exception e) { continue; } // } } await _context.SaveChangesAsync(); // try // { // await _context.SaveChangesAsync(); // } // catch (Exception e) // { // throw new Exception(e.Message); // } return(Ok(news)); } return(NotFound()); } return(BadRequest(nameof(quantity))); }
public override async Task <ActionResult <IEnumerable <New> > > GetTopNews([FromQuery] int quantity, [FromQuery] string subject) { if (quantity > 0) { Website vnexpress = new Zing(); // vnexpress.SetUrl("https://vnexpress.net"); var news = await vnexpress.GetTopNews(quantity, subject); if (news != null) { foreach (var n in news) { var exist = _context.News.FirstOrDefault(e => e.Url == n.Url && e.Title == n.Title); if (exist == null) { _context.News.Add(n); try { var post = PostCreateModel.Create(n); if (post == null) { return(BadRequest()); } await CreatePost(post); } catch (System.Exception e) { return(BadRequest(e.Message)); } } } try { // await _context.SaveChangesAsync(); } catch (Exception e) { throw new Exception(e.Message); } return(Ok(news)); } } return(BadRequest(nameof(quantity))); }
public override async Task <ActionResult <IEnumerable <New> > > GetTopNews([FromQuery] int quantity, [FromQuery] string subject) { if (quantity > 0) { var result = new Result(); Website vnexpress = new Vne(); vnexpress.SetUrl("https://vnexpress.net"); var news = await vnexpress.GetTopNews(quantity, subject); if (news != null) { foreach (var n in news) { result.Total++; var existed = _context.News.FirstOrDefault(e => e.Title.ToLower() == n.Title); if (existed != null) { continue; } try { var post = PostCreateModel.Create(n); if (post == null) { continue; } Wordpress.CreateAsync(post); _context.News.Add(n); result.Published++; } catch (System.Exception e) { continue; } } await _context.SaveChangesAsync(); return(Ok(result)); } } return(BadRequest(nameof(quantity))); }