В настоящее время не возможно получить положение GPS iPhone, использующее просто API JavaScript. Был разговор, что это было бы хорошо, но конечно Apple не прокомментирует будущие улучшения на публике.
Из MSDN
Если вы реализуете IEquatable, вы также должны переопределить реализации базового класса Object :: Equals (Object) и GetHashCode (), чтобы их поведение соответствовало метод IEquatable :: Equals. Если вы переопределяете Object :: Equals (Object), ваша переопределенная реализация также вызывается в вызовах статического метода Equals (System.Object, System.Object) вашего класса. Это гарантирует, что все вызовы метода Equals () возвращают согласованные результаты.
добавьте это в FredKey, и он должен работать
public override int GetHashCode()
{
return A.GetHashCode();
}