我認爲下面的代碼是很好的。但是我怎樣才能在LINQ中編寫它?我如何比較linq中的Employee類型對象?LINQ中的EqualityComparer - 我該怎麼辦?
namespace GenericReplacement
{
class Program
{
static void Main(string[] args)
{
EmployeeComparer employeeComparer = new EmployeeComparer();
Employee employee1 = new Employee() { ID = 1, Name = "yusuf", SurName = "karatoprak" };
Employee employee2 = new Employee() { ID = 2, Name = "Ali", SurName = "Yılmaz" };
bool returnValue = employeeComparer.Equals(employee1, employee2);
int returnValueHashCode = employeeComparer.GetHashCode(employee1);
Console.WriteLine("Result: "+returnValue.ToString()+"\n");
Console.WriteLine(returnValueHashCode.ToString());
Console.ReadKey();
}
}
public class EmployeeComparer: EqualityComparer<Employee>
{
public override bool Equals(Employee x, Employee y)
{
return EqualityComparer<Employee>.Default.Equals(x, y);
}
public override int GetHashCode(Employee obj)
{
return EqualityComparer<Employee>.Default.GetHashCode(obj);
}
}
public class Employee
{
public int ID { get; set; }
public string Name { get; set; }
public string SurName { get; set; }
}
}
寫什麼在LINQ?您編寫的代碼不需要在LINQ中重寫。 – 2010-08-08 09:53:58
如何比較linq中的員工類型對象? – Penguen 2010-08-08 09:57:51
爲什麼?你想達到什麼目的??顧名思義,LINQ是關於**查詢**(LINQ = Language Integrated ** Query **) - 它不是爲您的代碼中的每個操作設計的。我沒有看到「在LINQ中」(或更好的:使用LINQ)寫這樣的東西的好處。 – 2010-08-08 10:03:57