2012-09-08 45 views
1

如何将bool Equals(object obj)方法添加到自动创建的类(在我的情况下是由edmx模型)。将方法添加到自动生成的类

我的意思是一种解决方案是继承这个类并使用这个新类,但我正在寻找不同的东西。

+1

使用扩展方法。看看http://stackoverflow.com/questions/6550551/how-can-i-add-a-equals-extension-to-an-enumeration –

+0

请说清楚:你想_override_ Equals? –

+0

注意:如果你重写等于,你必须**重写GetHashCode也是 –

回答

8

该类是部分的,所以你可以创建一个新的部分类。

public partial class MyClass 
{ 
    bool Equals(object obj) 
    { 
    // code here 
    } 
} 
+0

是的,我也刚刚找到了这个解决方案,比x – Saint

+0

@Saint Glad它的工作原理 –

-2

您可以使用扩展方法

public static class ExM 
{ 
    public static bool Equals(this MyClass obj1, MyClass obj2) 
    { 
     // code here 
    } 
} 

这将增加该方法Equals MyClass中的智能感知对象,这样当你调用它

bool b = MyClassObject1.Equals(MyClassObject2); 
+0

@Downvoter:小心告诉出了什么问题? –

+2

我没有downvote,但他要求添加方法作为实例方法。你的解决方案有效,但这不是他所要求的。 –

相关问题