using System; using EFLib; using Model; namespace DataManagers { public class DbDataManager : IDataManager { private LolContext Context { get; set; } public IChampionsManager ChampionsMgr => throw new NotImplementedException(); public ISkinsManager SkinsMgr => throw new NotImplementedException(); public IRunesManager RunesMgr => throw new NotImplementedException(); public IRunePagesManager RunePagesMgr => throw new NotImplementedException(); public DbDataManager(LolContext context) { Context = context; } public async Task GetNumbersOfElement() { return await Task.Run(() => Context.Champions.Count()); } public async Task GetById(int id) { return await Task.Run(() => Context.Champions.SingleOrDefault((ChampionEntity arg) => arg.Id == id).ToPoco()); } public async Task Add(Champion champ) { ChampionEntity entity = champ.ToEntity(); await Context.Champions.AddAsync(entity); Context.SaveChanges(); return await Task.Run(() => Context.Champions.SingleOrDefault((ChampionEntity arg) => arg.Name == champ.Name && arg.Bio == champ.Bio).ToPoco()); } public void Dispose() { Context.Dispose(); } } }