हां, रिशेर्पर ऐसा कर सकता है। (Alt + इन्स सेटिंग या Resharper निर्भर करता है -> संपादित -> कोड उत्पन्न) अपने प्रकार के अंदर कर्सर के साथ, "कोड जेनरेट करें" मेनू खोलें, और "समानता के सदस्यों":
यह (जैसे अपने प्रकार लागू करना चाहिए IEquatable<T>
) एक विंडो है जहां आप चुन सकते हैं सदस्यों समानता के लिए उपयोग किया जाता है को खोलता है, उत्पन्न कोड के बारे में कुछ विकल्पों के साथ:
आप दो गुणों के साथ एक सरल प्रकार से शुरू करते हैं:
class Person
{
public string FirstName { get; private set; }
public string LastName { get; private set; }
}
तब उत्पन्न कोड की तरह कुछ लग सकता है:
class Person : IEquatable<Person>
{
public string FirstName { get; private set; }
public string LastName { get; private set; }
public bool Equals(Person other)
{
if (ReferenceEquals(null, other))
return false;
if (ReferenceEquals(this, other))
return true;
return string.Equals(FirstName, other.FirstName) && string.Equals(LastName, other.LastName);
}
public override bool Equals(object obj)
{
if (ReferenceEquals(null, obj))
return false;
if (ReferenceEquals(this, obj))
return true;
if (obj.GetType() != this.GetType())
return false;
return Equals((Person)obj);
}
public override int GetHashCode()
{
unchecked
{
return ((FirstName != null ? FirstName.GetHashCode() : 0) * 397)^(LastName != null ? LastName.GetHashCode() : 0);
}
}
}
बस प्रकार के बराबर होती है और टैब दबाएं। –