private static void SaveNotExistSource(string source, string url) { RSSContext db = new RSSContext(); var addingSource = db.RSSSources.FirstOrDefault(s => s.Name == source); if (addingSource == null) { db.RSSSources.Add(new RSSSource() { Name = source, URL = url }); db.SaveChanges(); } }
private static void SaveNotExistFeeds(string url, string source) { var readFeeds = GetFeed(url, source); List <RSSFeed> saveFeeds = null; RSSContext db = new RSSContext(); try { saveFeeds = db.RSSFeeds.Where(f => f.RSSSource.Name == source).ToList(); foreach (var feed in readFeeds) { if (saveFeeds == null || saveFeeds.FirstOrDefault(f => f.Name == feed.Name && f.PublishDate == feed.PublishDate) == null) { db.RSSFeeds.Add(feed); } } Console.WriteLine(string.Format("Прочитано {0} новостей из {1}, сохранено {2}", readFeeds.Count, source, db.SaveChanges())); } catch (Exception e) { Console.WriteLine(string.Format("Ошибка загрузки новостей из {0}", source)); } }