Advertisement
Guest User

Untitled

a guest
Dec 14th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. public abstract class Repository<T> : IRepository<T> where T : BaseEntity
  2. {
  3. private System.Data.Entity.DbContext db;
  4. private System.Data.Entity.DbSet<T> dbSet;
  5.  
  6. public Repository()
  7. {
  8. db = new LibrarySystemContext();
  9. dbSet = db.Set<T>();
  10. }
  11. public List<T> GetAll()
  12. {
  13. return dbSet.ToList();
  14. }
  15.  
  16. public List<T> GetAll(System.Linq.Expressions.Expression<Func<T, bool>> filter)
  17. {
  18. return dbSet.Where(filter).ToList();
  19. }
  20.  
  21. public T Get(int id)
  22. {
  23. return dbSet.Find(id);
  24. }
  25.  
  26. public T Get(System.Linq.Expressions.Expression<Func<T, bool>> filter)
  27. {
  28. return dbSet.SingleOrDefault(filter);
  29. }
  30.  
  31. public void Insert(T entity)
  32. {
  33. db.Entry(entity).State = EntityState.Added;
  34. db.SaveChanges();
  35.  
  36. }
  37.  
  38. public void Update(T entity)
  39. {
  40. db.Entry(entity).State = EntityState.Modified;
  41. db.SaveChanges();
  42.  
  43. }
  44.  
  45. public T GetById(int id)
  46. {
  47. return dbSet.Find(id);
  48. }
  49.  
  50.  
  51. public void Save(T entity)
  52. {
  53. if (entity.Id > 0)
  54. {
  55. Update(entity);
  56. }
  57. else
  58. {
  59. Insert(entity);
  60. }
  61.  
  62. db.SaveChanges();
  63. }
  64.  
  65. public void Delete(int id)
  66. {
  67. T entity = GetById(id);
  68. Delete(entity);
  69. }
  70. public void Delete(T entity)
  71. {
  72. db.Entry(entity).State = EntityState.Deleted;
  73. db.SaveChanges();
  74. }
  75. }
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement