public async void ShowNewsFromCategory(ArticleCategory category) { using (var db = new ArticleContext()) { ArticleList = db.Articles.Where(x => x.Category == category && x.Country == Properties.Settings.Default.NewsSourceCountryCode).ToList(); } }
public Test() { using (var db = new ArticleContext()) { ArticleList = db.Articles.Where(x => x.Category == ArticleCategory.technology).ToList <Article>(); } }
private void ClearDatabaseButton_Click(object sender, RoutedEventArgs e) { using (var db = new ArticleContext()) { db.Articles.RemoveRange(db.Articles); db.SaveChanges(); } }
/// <summary> /// Remove all entries from database that are older than specified number of days /// </summary> /// <param name="days"></param> private static void RemoveOlderFromDatabase(int days) { using (var db = new ArticleContext()) { var toBeRemoved = db.Articles.Where(x => DbFunctions.DiffDays(x.PublishedAt, DateTime.Now) >= days); //foreach (var article in toBeRemoved) //{ // if (File.Exists(article.LocalPathToImage)) // File.Delete(article.LocalPathToImage); //} db.Articles.RemoveRange(toBeRemoved); db.SaveChanges(); } }
private void ImageCleanup() { var dir = new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory + @"databaseImages\"); if (dir.Exists) { foreach (var file in dir.GetFiles()) { using (var db = new ArticleContext()) { if (!db.Articles.Where(x => x.LocalPathToImage == file.FullName).Any()) { file.Delete(); } } } } }
/// <summary> /// Adds article collection to database with specified category /// </summary> /// <param name="newsCollection"></param> /// <param name="category"></param> private static void AddToDatabase(ArticleCollection newsCollection, ArticleCategory category) { List <Article> newArticlesList = new List <Article>(); using (var db = new ArticleContext()) { foreach (var article in newsCollection.Articles) { if (!db.Articles.Where(x => x.Category == category).Any(x => x.Url == article.Url)) { article.Category = category; article.Country = Properties.Settings.Default.NewsSourceCountryCode; article.LocalPathToImage = DownloadImage(article.UrlToImage); newArticlesList.Add(article); } } db.Articles.AddRange(newArticlesList); db.SaveChanges(); } }