Aşağıdaki koda sahibim:Bu kod farklı değerler döndürür. Ancak, istediğim, anonim bir türe karşı güçlü yazılmış bir koleksiyona dönmek.
var foo = (from data in pivotedData.AsEnumerable()
select new
{
Group = data.Field<string>("Group_Number"),
Study = data.Field<string>("Study_Name")
}).Distinct();
Beklendiği gibi bu, ayrı değerleri döndürür. Ancak, istediğim, anonim bir türe karşılık güçlü bir şekilde yazılan bir koleksiyona dönmek, bu yüzden yaptığımda:
var foo = (from data in pivotedData.AsEnumerable()
select new BarObject
{
Group = data.Field<string>("Group_Number"),
Study = data.Field<string>("Study_Name")
}).Distinct();
Bu, farklı değerleri döndürmez, hepsini döndürür. Bunu gerçek nesnelerle yapmanın bir yolu var mı?
'Eşittir()' ve Uygulanışı: – dlev
@dlev GetHashCode'un ne yapması gerekiyor? – BrunoLM
@BrunoLM: Örneğin, bu yanıtı okuyun: http://stackoverflow.com/questions/6305324/why-use-gethashcode-over-equals/6305531#6305531 GetHashCode, Eşittir'in de karşılaştırdığı tüm alanlar üzerinde bir sağlama kodu vermeli ve nesnelerin hızlı arama için karma veya sözlükler için kullanılır. –