public static bool operator ==(Index a, Index b) {
if (ReferenceEquals(a, b)) {
return true;
}
if (((object)a == null) || ((object)b == null)) {
return false;
}
return a.Name == b.Name && a.IsUnique == b.IsUnique && a.Columns.SequenceEqual(b.Columns, new IndexColumnComparer())
&& a.Map.Type.Name == b.Map.Type.Name;
}