You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

LuUtilsPkBigSerialDataAccess.cs 1.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using System;
  2. using System.Linq.Expressions;
  3. using Luticate2.Utils.DataAccess;
  4. using Luticate2.Utils.Dbo.Filter;
  5. using Test.Utils.DataAccess.Models;
  6. using Test.Utils.Dbo.PkBigSerial;
  7. namespace Test.Utils.DataAccess
  8. {
  9. public class LuUtilsPkBigSerialDataAccess : LuEfCrudDataAccess<pk_bigserial, PkBigSerialAddDbo, PkBigSerialDbo, PkBigSerialAddDbo, LuUtilsDbContext, long>
  10. {
  11. public LuUtilsPkBigSerialDataAccess(LuUtilsDbContext db) : base(db, db.pk_bigserial)
  12. {
  13. }
  14. protected override pk_bigserial GetModelFromTCreate(PkBigSerialAddDbo obj)
  15. {
  16. return GetModelFromTUpdate(obj, new pk_bigserial());
  17. }
  18. protected override void EditModelFromTUpdate(PkBigSerialAddDbo obj, pk_bigserial model)
  19. {
  20. model.some_int = obj.SomeInt;
  21. model.some_text = obj.SomeText;
  22. }
  23. protected override PkBigSerialDbo GetDboFromModel(pk_bigserial model)
  24. {
  25. return new PkBigSerialDbo
  26. {
  27. CreatedAt = model.created_at,
  28. Id = model.id,
  29. SomeInt = model.some_int,
  30. SomeText = model.some_text
  31. };
  32. }
  33. protected override Expression<Func<pk_bigserial, bool>> GetFilterExpression(LuFilterDbo filter)
  34. {
  35. var query = filter.Query.ToLower();
  36. return model => model.some_text.ToLower().Contains(query) || model.some_int.ToString().Contains(query);
  37. }
  38. }
  39. }