Ich mache String-basierte Dynamic Linq und muss eine verschachtelte where-Klausel anwenden.
Die Antwort hier bringt mich auf halbem Weg dorthin. Die Spalten in zwei Tabellen haben jedoch übereinstimmende IDs. Ich muss in der Lage sein, über einen Alias oder einen anderen zu verweisen, wie unten:
rolesCollection
.Where("AssignedUsers.Where(AssignedUsers.TypId == rolesCollection.TypId).Any()");
Irgendeine Idee, wie man das erreicht? Ich habe nicht die Möglichkeit, ein Objekt zu übergeben. Dies muss eine rein stringbasierte Lösung im Kontext einer generisierten API-Suchmethode sein. Dies ist nur ein Beispiel für das, was ich brauche ... Ich kann nicht beitreten oder irgendetwas über Code. Ich suche nach der Lösung im stringbasierten Teil des Beispielcodes.
Das AssignedUsers-Objekt sollte in diesem theoretischen Beispiel eine AssignedUsers_Typ-Auflistung haben, und Sie können einfach unten darauf verweisen, ohne auf die Typ-Spalten aus beiden Tabellen verweisen zu müssen.
rolesCollection.Where("AssignedUsers_Typ.Any()");
Ich konnte mein Problem mit dieser Lösung beheben.
Willst du so etwas?
rolesCollection = rolesCollection.Where(x => assignedUsers.Any(t => t.TypId == x.TypId)).ToList();