How to find if 2 Objects are Equal in C#?

There are times when you need to determine if 2 objects are equal or not. In these cases, you could either override the Equals method or implement IEquatable interface.

How to find if 2 Objects are Equal in C#?

Below is a sample code snippet demonstrating the usage of Object.Equals method to find the equality of 2 objects.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ACSampleCode
{
    class Program
    {
        static void Main(string[] args)
        {
            Employee emp = new Employee { Name = "ACMarc", Designation = "Chief Architect" };
            Employee emp1 = new Employee { Name = "ACMarc", Designation = "Software Engineer" };
            Employee emp2 = new Employee { Name = "Tester", Designation = "Tester" };
            Console.WriteLine(emp.Equals(emp1));
            Console.WriteLine(emp.Equals(emp2));
            Console.ReadLine();
        }
    }

    public class Employee
    {
        public string Name { get; set; }
        public string Designation { get; set; }

        public override bool Equals(object obj)
        {
            Employee compared = (Employee)obj;
            if (compared.Name == Name)
                return true;
            else
                return false;
        }
    }
}
How to find if 2 Objects are Equal in C#?