Сравнивая два словаря для равных данных в C #?
У меня есть два словаря, содержащие строковый ключ, а затем объект. Объект содержит пять полей. Существует ли элегантный способ обеспечить, чтобы оба словаря сначала содержали одинаковые ключи, а затем, если это правильно, содержали одинаковые пять полей для каждого объекта?
Будет ли в двух словарях одинаковый встроенный хэш-код или что-то в этом роде?
РЕДАКТИРОВАТЬ, неПохоже, что работает для следующего кода:
Dictionary test1 = new Dictionary();
Dictionary test2 = new Dictionary();
MyClass i = new MyClass("", "", 1, 1, 1, 1);
MyClass j = new MyClass("", "", 1, 1, 1, 1);
test1.Add("1", i);
test2.Add("1", j);
bool equal = test1.OrderBy(r => r.Key).SequenceEqual(test2.OrderBy(r => r.Key));
class MyClass
{
private string a;
private string b;
private long? c;
private decimal d;
private decimal e;
private decimal f;
public MyClass(string aa, string bb, long? cc, decimal dd, decimal ee, decimal ff)
{
a= aa;
b= bb;
c= cc;
d= dd;
e= ee;
f= ff;
}
это возвращает ложь?