選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

LuUtilsPkGuidDataAccess.cs 1.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using System;
  2. using System.Linq.Expressions;
  3. using Luticate2.Utils.DataAccess;
  4. using Luticate2.Utils.Dbo.Filter;
  5. using Luticate2.Utils.Utils;
  6. using Test.Utils.DataAccess.Models;
  7. using Test.Utils.Dbo.PkGuid;
  8. namespace Test.Utils.DataAccess
  9. {
  10. public class LuUtilsPkGuidDataAccess : LuEfCrudDataAccess<pk_guid, PkGuidAddDbo, PkGuidDbo, PkGuidAddDbo, LuUtilsDbContext>
  11. {
  12. public LuUtilsPkGuidDataAccess(LuUtilsDbContext db) : base(db, db.pk_guid)
  13. {
  14. }
  15. protected override pk_guid GetModelFromTCreate(PkGuidAddDbo obj)
  16. {
  17. return GetModelFromTUpdate(obj, new pk_guid());
  18. }
  19. protected override void EditModelFromTUpdate(PkGuidAddDbo obj, pk_guid model)
  20. {
  21. model.some_int = obj.SomeInt;
  22. model.some_text = obj.SomeText;
  23. }
  24. protected override PkGuidDbo GetDboFromModel(pk_guid model)
  25. {
  26. return new PkGuidDbo
  27. {
  28. CreatedAt = model.created_at,
  29. UpdatedAt = model.updated_at,
  30. Id = model.id.ToString(),
  31. SomeInt = model.some_int,
  32. SomeText = model.some_text
  33. };
  34. }
  35. protected override Expression<Func<pk_guid, bool>> GetFilterExpression(LuFilterDbo filter)
  36. {
  37. return model => LuUtilsDbContext.lu_texts_match(filter.Query, model.some_text + " " + model.some_int.ToString());
  38. }
  39. }
  40. }