c#为通用类T实现IEqualityComparer <T>

Mil*_*čka 0 c# generics iequalitycomparer

有没有办法为泛型类实现IEqualityComparer?

我试过了:

public class MyComparer : IEqualityComparer<MyGenericClass>
Run Code Online (Sandbox Code Playgroud)

这是错误的,因为MyGenericClass将3个参数作为泛型,所以下一个

public class MyComparer : IEqualityComparer<MyGenericClass<A, B, C>>
Run Code Online (Sandbox Code Playgroud)

这是错的,因为我不知道类型A,B,C.所以

public class MyComparer<MyGenericClass<A, B, C>> : IEqualityComparer<MyGenericClass<A, B, C>>
Run Code Online (Sandbox Code Playgroud)

是错的.有没有办法实现这个?谢谢

cad*_*ll0 6

你很亲密

public class MyComparer<A, B, C> : IEqualityComparer<MyGenericClass<A, B, C>>
Run Code Online (Sandbox Code Playgroud)

请注意,请注意事物A,B和C.这对任何人都没有帮助.标准命名约定是T<SomethingDescriptive>.在EF的情况下,它可能是TEntity,在MVC或MVVM中,它可能是TModelTViewModel.