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.

LuPOCGroupsToDbo.cs 1.0KB

12345678910111213141516171819202122232425262728
  1. using System;
  2. using System.Linq;
  3. using Luticate2.Auth.Business.PartialObjectCopier;
  4. using Luticate2.Auth.DataAccess.Models;
  5. using Luticate2.Auth.Dbo.Auth;
  6. using Luticate2.Auth.Dbo.Fields;
  7. using Luticate2.Auth.Dbo.PartialObjectCopier;
  8. using Luticate2.Auth.Dbo.Result;
  9. namespace Luticate2.Auth.Business.Auth.PartialObjectCopier
  10. {
  11. public class LuPOCGroupsToDbo : LuPartialObjectCopier<LuGroups, LuGroupDbo>
  12. {
  13. public LuPOCGroupsToDbo(IServiceProvider serviceProvider) : base(serviceProvider)
  14. {
  15. }
  16. public override LuResult<LuGroupDbo> Copy(LuFieldDbo path, LuPartialFieldsDbo fields, LuGroups modelFrom,
  17. LuGroupDbo dboTo, LuPartialObjectCopierOptions options)
  18. {
  19. MayCopy(path, fields, dboTo, dbo => dbo.Id, () => modelFrom.Id);
  20. MayCopySubProperty(path, fields, modelFrom, dboTo, x => x.IdNavigation, x => x.Metadata, options);
  21. MayCopy(path, fields, dboTo, dbo => dbo.Name, () => modelFrom.Name);
  22. return LuResult<LuGroupDbo>.Ok(dboTo);
  23. }
  24. }
  25. }