C# - LINQ to Entities nicht erkennt die Methode 'Boolean'

Habe ich die folgende linq-Ausdruck in die lambda-syntax:

var myValue = 6;
var from = 2;
var to = 8;

var res = MyList.Where(m => m.person.Id == person.Id
                         && IsBetween(myValue, from, to))
                .Select(x => new Person { blah blah blah })
                .ToList());

IsBetween ist einfach generische Hilfsmethode, um zu sehen, ob ich etwas dazwischen:

public bool IsBetween<T>(T element, T start, T end)
{
    return Comparer<T>.Default.Compare(element, start) >= 0
        && Comparer<T>.Default.Compare(element, end) <= 0;
}

Nun bekomme ich diese Fehlermeldung, und ich weiß nicht, hot, diese zu umgehen:

LINQ to Entities erkennt nicht die Methode " Boolean IsBetween[Decimal](System.Dezimal-System.Dezimal-System.Decimal)' - Methode, und diese Methode kann nicht übersetzt werden, in einen laden zu Ausdruck.

InformationsquelleAutor codingjoe | 2013-11-16
Schreibe einen Kommentar