| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- using System;
- using System.Collections.Generic;
- using System.Data.Entity;
- using System.Linq;
- using System.Linq.Expressions;
- using System.Text;
- using System.Threading.Tasks;
- using GSG.NET.Logging;
- namespace OHV.SqliteDAL.DAL
- {
- public interface IRepository<TEntity> where TEntity : class
- {
- void Create(TEntity entity);
- void Delete(TEntity entity);
- void Delete(Guid id);
- void Edit(TEntity entity);
- }
- public class GenericDAL<T> where T : class
- {
- public List<T> All
- {
- get
- {
- List<T> ll = new List<T>();
- using (var db = new OHVDbContext("OHVDb"))
- {
- ll = db.Set<T>().ToList();
- }
- return ll;
- }
- }
- public int Count
- {
- get
- {
- using (var db = new OHVDbContext("OHVDb"))
- {
- return db.Set<T>().Count();
- }
- }
- }
- public T GetK(object key)
- {
- using (var db = new OHVDbContext("OHVDb"))
- {
- return db.Set<T>().Find(key);
- }
- }
- public void Add(T entity)
- {
- using (var db = new OHVDbContext("OHVDb"))
- {
- db.Set<T>().Add(entity);
- db.SaveChanges();
- }
- }
- public void Delete(T entity)
- {
- using (var db = new OHVDbContext("OHVDb"))
- {
- db.Set<T>().Remove(entity);
- db.SaveChanges();
- }
- }
- //protected int DeleteN(Expression<Func<T, bool>> where)
- //{
- //}
- public void Clean()
- {
- using (var db = new OHVDbContext("OHVDb"))
- {
- db.Set<T>().RemoveRange(db.Set<T>());
- db.SaveChanges();
- }
- }
- }
- class GenericRepository<T> : IGenericRepository<T> where T : class
- {
- protected Logger logger = Logger.GetLogger();
- private OHVDbContext _context = null;
- private DbSet<T> table = null;
- public IEnumerable<T> GetAll()
- {
- return table.ToList();
- }
- public T GetById(object id)
- {
- return table.Find(id);
- }
- public void Insert(T obj)
- {
- table.Add(obj);
- }
- public void Update(T obj)
- {
- table.Attach(obj);
- _context.Entry(obj).State = EntityState.Modified;
- }
- public void Delete(object id)
- {
- T existing = table.Find(id);
- table.Remove(existing);
- }
- public void Save()
- {
- _context.SaveChanges();
- }
- }
- public interface IGenericRepository<T> where T : class
- {
- IEnumerable<T> GetAll();
- T GetById(object id);
- void Insert(T obj);
- void Update(T obj);
- void Delete(object id);
- void Save();
- }
- }
|