From 17dea16bc59f6781407f467d3df7e28667a874f6 Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Sun, 10 Feb 2019 15:40:47 +0000 Subject: Testing program with usage of insertArticles --- Main/Program.cs | 83 ++++++++++++--------------------------------------------- 1 file changed, 17 insertions(+), 66 deletions(-) (limited to 'Main') diff --git a/Main/Program.cs b/Main/Program.cs index 0e88199..a96762c 100644 --- a/Main/Program.cs +++ b/Main/Program.cs @@ -9,74 +9,25 @@ using Aggregator.Parser; namespace Main { internal static class Program { - // private static async Task Main(string[] args) { - // List configs = new List() { - // new Config() { - // Source = "BBC", - // Title = 0, - // Description = 1, - // ArticleLink = 2, - // ImageLink = 5, - // PublishDate = 4 - // } - // }; - // string[] xmls = new[] { - // await Download.DownloadXML("http://feeds.bbci.co.uk/news/rss.xml") - // }; - // List
articles = ParserService.ParseMultiple(xmls, configs).ToList(); - // Console.WriteLine(articles.Count); - - // using (var db = new DatabaseContext()) { - // int start; - // try { - // start = db.Articles.Last().ArticleID; - // } catch (Exception) { - // start = 0; - // } - // var insertReady = articles.Select((article, index) => new Article() { - // ArticleID = index + start, - // Source = article.Source, - // Title = article.Title, - // Description = article.Description, - // ArticleLink = article.ArticleLink, - // ImageLink = article.ImageLink, - // PublishDate = article.PublishDate - // }).ToList(); - // insertReady.ForEach(async article => await db.Articles.AddAsync(article)); - // int records = await db.SaveChangesAsync(); - // Console.WriteLine($"Wrote {records} records!"); - // } - // } - private static async Task Main(string[] args) { - using (var db = new DatabaseContext()) { - int start; - try { - start = db.Articles.Last().ArticleID; - } - catch (Exception) { - start = 0; - } - try { - var articles = new List
() { - new Article() { - Title = "TITLE1" - }, - new Article() { - Title = "TITLE2" - }, - new Article() { - Title = "TITLE3" - } - }; - await db.AddRangeAsync(articles.Select((article, index) => new Article() { - ArticleID = index + start, - Title = article.Title})); - await db.SaveChangesAsync(); - } - catch (Microsoft.EntityFrameworkCore.DbUpdateException) { - Console.WriteLine("Duplicate!"); + List configs = new List() { + new Config() { + Source = "BBC", + Title = 0, + Description = 1, + ArticleLink = 2, + ImageLink = 5, + PublishDate = 4 } + }; + string[] xmls = new[] { + await Download.DownloadXML("http://feeds.bbci.co.uk/news/rss.xml") + }; + List
articles = ParserService.ParseMultiple(xmls, configs).ToList(); + Console.WriteLine("Wrote"); + + using (var db = new DatabaseContext()) { + await db.InsertArticles(articles); } } } -- cgit v1.2.3-13-gbd6f