public ApartmentService(IDatabaseContextProvider contextProvider, ILogger logger) { _contextProvider = contextProvider ?? throw new ArgumentNullException(nameof(contextProvider)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _differenceController = new DifferenceController(); _differenceController.AutoBuilder <ApartmentEntity>() .Ignore(x => x.Id) .Ignore(x => x.CreatedAtUtc) .Ignore(x => x.UpdatedAtUtc) .Ignore(x => x.DisappearedDate) .Ignore(x => x.Title) .Build(); }
static void Main(string[] args) { DifferenceController differenceController = new DifferenceController(); differenceController.CustomBuilder <People>() .One(x => x.Phone) .All(x => x.SweetHome) //.GoDepth(x => x.SweetHome) .Build(); differenceController.AutoBuilder <People>() .Stop(x => x.SweetHome) .Build(); People p1 = new People { Id = 1, FullName = "Andy", BirdthDay = DateTime.Today, Phone = "88005553535", SweetHome = new Home { Id = 111, IsPrivate = true } }; People p2 = new People { Id = 21, FullName = "Greogre", BirdthDay = DateTime.MinValue, Phone = "900", SweetHome = new Home { Id = 222, IsPrivate = true, Address = "ulitsa Pushkina, dom Kolotushkina, 47", RoomNumber = 1234, Square = 120, Floor = 34, } }; var differences = differenceController.GetCustomDifferences(p1, p2); var differences2 = differenceController.GetAutoDifferences(p1, p2); var differences3 = differenceController.GetAutoDifferences(p1.SweetHome, p2.SweetHome); Console.WriteLine("Hello World!"); }