BaseService.cs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using Model;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Linq.Expressions;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace DAL
  9. {
  10. public class BaseService<T> where T : BaseEntity, new()
  11. {
  12. public virtual async Task<int> InsertAsync(T model)
  13. {
  14. var runsql = DB.SqlSugarClient.Insertable(model);
  15. var rows = await runsql.ExecuteCommandAsync();
  16. return rows;
  17. }
  18. public virtual async Task<bool> UpdateAsync(T model)
  19. {
  20. var runsql = DB.SqlSugarClient.Updateable(model);
  21. var rows = await runsql.ExecuteCommandAsync();
  22. return rows>0;
  23. }
  24. public virtual async Task<bool> DeleteAsync(T model)
  25. {
  26. var runsql = DB.SqlSugarClient.Deleteable(model);
  27. var rows = await runsql.ExecuteCommandAsync();
  28. return rows > 0;
  29. }
  30. public virtual async Task<T> GetByOneAsync(Expression<Func<T,bool>> where)
  31. {
  32. var runsql = DB.SqlSugarClient.Queryable<T>().Where(where);
  33. return await runsql.FirstAsync();
  34. }
  35. public virtual async Task<List<T>> GetListAsync(Expression<Func<T, bool>> where)
  36. {
  37. var runsql = DB.SqlSugarClient.Queryable<T>().Where(where);
  38. return await runsql.ToListAsync();
  39. }
  40. public virtual async Task<bool> ExistAsync(Expression<Func<T, bool>> where)
  41. {
  42. return await DB.SqlSugarClient.Queryable<T>()
  43. .Where(where)
  44. .AnyAsync();
  45. }
  46. }
  47. }