I'm trying to convert a list of objects to a dictionary using the following code:
 var MyDictionary = MyList.Distinct().ToDictionary(i => i.ObjectId, i => i);
I know that a dictionary should not contain duplicate elements, hence the .Distinct(). Yet I still get the following Exception whenever there's a duplicate element: 
An item with the same key has already been added.
MyList is a list of MyObject that looks like this: 
public class MyObject{
        public string ObjectId { get; set; }
        public string FName { get; set; }
        public string LName { get; set; }
    }
Is there a better way to create a dictionary from a list of objects ? or am I doing something wrong?
 
     
     
    