using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using ConsoleHttp.Model; using MqttMsgServer.Model; namespace MqttMsgServer.Dao { public class DbRepository : IRepository where T : Entity { private readonly ApplicationDbContext _dbContext; //public DbRepository(ApplicationDbContext dbContext) //{ // _dbContext = dbContext; //} public DbRepository() { _dbContext = new ApplicationDbContext(); } public IEnumerable GetAll() { return _dbContext.Set().Where(i => true); } public T GetById(TPrimaryKey id) { return _dbContext.Set().AsNoTracking().FirstOrDefault(i => i.Id.Equals(id)); } public T Add(T t) { _dbContext.Set().Add(t); if (_dbContext.SaveChanges() > 0) { return t; } return null; } public T Update(T t) { _dbContext.Set().Attach(t); if (_dbContext.SaveChanges() > 0) { return t; } return null; } public T Delete(T t) { _dbContext.Set().Remove(t); if (_dbContext.SaveChanges() > 0) { return t; } return null; } } }