OrderBy auf eine Nullable<int> mit einem Standard-Wert in Entity Framework

Sind wir migrieren von code zu verwenden, Entity Framework und haben eine Abfrage, die versucht zu Sortieren, die auf eine null-Feld und bietet eine Standard-sort-value ist der Wert null ist über die Null-Werte zulässt.GetValueOrDefault(T) Funktion.

Jedoch bei der Ausführung gibt es den folgenden Fehler:

LINQ to Entities nicht erkennt die Methode 'Int32 GetValueOrDefault(Int32) - Methode, und diese Methode kann nicht übersetzt werden, in einen laden zu Ausdruck.

Die Abfrage sieht wie folgt aus:

int magicDefaultSortValue = 250;
var query = context.MyTable.OrderBy(t => t.MyNullableSortColumn
                                          .GetValueOrDefault(magicDefaultSortValue));

Vom diese Antwort kann ich sehen, dass es einen Weg gibt, um "übersetzungen" in die EDMX. Könnten wir schreiben eine ähnliche übersetzung für das Koaleszenz-Funktion?

HINWEIS: Als ich versuchte, die ?? - coalescing-operator anstelle von GetValueOrDefault in der Abfrage funktioniert es. Also vielleicht alles, was, die arbeiten könnten genutzt werden?

InformationsquelleAutor Reddog | 2011-10-26
Schreibe einen Kommentar