Ich habe eine Abfrage, die wie folgt aussieht:Concat-Rückgabe Die verschachtelte Abfrage wird nicht unterstützt. Operation1 = 'UnionAll' Operation2 = 'MultiStreamNest'
ProviderNotes.Where(it=>it.NoteEntityId == 272651).Select(it=>new
{
Id = it.NoteId,
Tags = it.ProviderNoteTags.Select(t => t.RelatedEntityId)
}).Concat(BookingNotes.Where(it=>it.NoteEntityId == 272651).Select(it=>new
{
Id = it.NoteId,
Tags = it.BookingNoteTags.Select(t => t.RelatedEntityId)
}
))
und wenn ich versuche Ergebnisse davon zu bekommen, ich bin immer
Die verschachtelte Abfrage wird nicht unterstützt. Operation1 = ‚UnionAll‘ Operation2 = ‚MultiStreamNest‘
Es gibt zwei Einschränkungen auf dieser Abfrage: 1) Ich kann nicht jede Abfrage als IEnumerable erhalten, bevor die Kombination, dass, weil ich es in IQueryable Form zum weiteren benötigen Filterung 2) Ich kann innere Sammlung nicht durch separate Abfrage füllen, weil jede Abfrage, die verkettet wird, in verschiedenen Repo mit verschiedenen Tabellen gebildet wird
PS Das von mir bereitgestellte Beispiel habe ich in LinqPad getestet. Es ist wirklich vereinfacht, um die Idee von dem, was passiert, zu bieten.
Ich habe wahrscheinlich nicht richtig erklären. Diese Tabellen befinden sich im selben Kontext. Sowohl die Eltern- als auch die Kindtabelle haben die gleiche Struktur, der einzige Unterschied besteht darin, dass es auf Datenbankebene unterschiedliche Tabellen gibt. Ich habe eine Basisklasse, die Abfrage für bestimmte Tabelle bildet, und dann habe ich Repos, die nur Konfigurationsklassen geerbt von dieser Basis sind, nur konkrete Tabellen angeben. Warum ich Zwischenergebnisse nicht verwenden kann, ist, dass ich nach der Vereinigung den Paging-Filter anwenden muss, also wähle ich keine 10k-Datensätze aus, um nur 5 auf dem Bildschirm anzuzeigen. Und übrigens, ohne innere Abfrage für Tags funktioniert alles ok. – KorsaR