У меня проблемы со сравнением объектов в Entity Framework 4.0.Пройдя некоторое время по поиску, я нашел сообщение в блоге в 2008 году, в котором говорилось, в чем заключалась моя проблема и почему она возникает. Сообщение в блоге, подробно описывающее мою проблему .
Подводя итог публикации в блоге.Вы не можете сделать пользовательское сравнение объектов с EF Framework вообще.Например,
public Foo
{
public int ID{get;set;}
public string Name {get;set;}
//I overrode the .Equals AND the == operator
}
public getFoo(Foo target)
{
DC.foos.FirstOrDefault(x => x == target);
}
System.NotSupportedException: невозможно создать постоянное значение типа 'Foo'. В этом контексте поддерживаются только примитивные типы (такие как Int32, String и Guid ').
Это по проекту согласно MicroSoft.
Может кто-нибудь указать мне направление, чтобы найти, если этот вид сравнения объектовподдерживается, если я использую магический интерфейс или магическую перегрузку? большое спасибо!