Kellerman Software Object Comparison не дает ожидаемого результата в новой версии - PullRequest
0 голосов
/ 01 октября 2018

Я следую точным образцам для журнала аудита из этого ресурса .

. Он отлично работает, даже когда мне нужно сравнить 2 разных объекта.

Но я понимаю,что его версия 3.2.0.0.Когда я получаю последнюю версию 4.56.0.0, результат уже не тот.

В частности, если у меня есть ObjectA, в котором есть поле, которого нет ObjectB, результат не 'не говори мне.Это я что-то упустил (например: config)?

Вот мой код:

public class ObjectA
{
    public long key { get; set; }
    public int age2 { get; set; }
    public string name { get; set; }
}

public class ObjectB
{
    public long key { get; set; }
    public int age { get; set; }
    public string name { get; set; }
}


public void function()
{
   ObjectA o1 = new ObjectA();
   o1.key = 3;
   o1.age2 = 10;
   o1.name = "b1";

   ObjectB o2 = new ObjectB();
   o2.key = 3;
   o2.age = 10;
   o2.name = "b2";

   CompareLogic compObjects = new CompareLogic();
    compObjects.Config.MaxDifferences = 99;
    compObjects.Config.IgnoreObjectTypes = true;
    compObjects.Config.IgnoreCollectionOrder = true;
    ComparisonResult compResult = compObjects.Compare(o1, o2);

    //Expected 2 results, but it only show 1 (in the latest version)!
    foreach (var change in compResult.Differences)
    {

    }
}
...