public Task <Category[]> GetCategories() { return(Task.Run(() => { using (var ctx = new DYDContext()) { return ctx.Categories.ToArray(); } })); }
public Task <Fact[]> GetFacts() { return(Task.Run(() => { using (var ctx = new DYDContext()) { return ctx.Facts.ToArray(); } })); }
public Task <Category> GetCategory(int categoryId) { return(Task.Run(() => { using (var ctx = new DYDContext()) { Category category = ctx.Categories .Where(c => c.Id == categoryId) .FirstOrDefault(); return category; } })); }
public Task AddFact(Fact fact, Category category) { return(Task.Run(() => { using (var ctx = new DYDContext()) { Category existingCategory = ctx.Categories.Where(c => c.Id == category.Id).FirstOrDefault(); fact.Category = existingCategory; ctx.Facts.Add(fact); ctx.SaveChanges(); } })); }
public Task <Fact> GetRandomFact(int categoryId = 0) { return(Task.Run(() => { using (var ctx = new DYDContext()) { var query = ctx.Facts .Include(f => f.Category); if (categoryId != 0) { query = query.Where(f => f.Category.Id == categoryId); } Fact[] facts = query.ToArray(); Fact fact = facts[_random.Next(facts.Length)]; return fact; } })); }