Wenn eine Methode zurückkehrt IEnumerable<T>
und ich nichts zurückgeben kann, können wir verwenden Enumerable.Empty<T>()
.
Gibt es ein Äquivalent zu dem oben genannten für eine Methode, die zurückgibt? IQueryable<T>
c#
return
iqueryable
Numan
quelle
quelle
Union
Abfragen in mehrere Abfragen anstatt in eine aufgeteilt werden.Enumerable.Empty<T>().AsQueryable();
Sollte es tun.quelle
Versuchen
return new T[0].AsQueryable();
quelle
Angenommen, Sie haben einen
IQueryable<T>
Anrufresult
:quelle
Ich würde von der Antwort von alejandrobog abraten, da dies immer noch Speicher verwendet, um ein leeres Array zu erstellen.
oder
sind bevorzugt. Array.Empty weist ein statisch typisiertes Array zu, sodass nur ein leeres Array von T erstellt wird, das von allen leeren abfragbaren Dateien gemeinsam genutzt wird.
quelle
Array.Empty<T>
ist nur nach .NET Framework 4.6 verfügbar. Für frühere Versionen können Sienew object[0].Cast<T>()