Ersetzen habe ich eine LINQ-Abfrage, die wie folgt aussieht Klausel stattdessen.ein reguläres Verfahren mit einer anonymen Methode in C#/LINQ
Ich versuchte ...
...
select
(f, b) => { f.MissingProp = b.MissingProp; return f }
... aber ich habe den folgenden Fehler:
A local variable named 'f' cannot be declared in this scope because it would give a different meaning to 'f', which is already used in a 'parent or current' scope to denote something else.
Wie kann ich "Lambda-ize" meine Frage?
aktualisieren
Das funktioniert auch nicht:
...
select
() => { f.MissingProp = b.MissingProp; return f }
ich die folgende Fehlermeldung erhalten:
The type of one of the expressions in the join clause is incorrect. Type inference failed in the call to 'Join'.
ich die join
Klausel nicht geändert zu alles, also bin ich perplex.
Ich kenne die LINQ-Syntax nicht gut genug, um es auszu schreiben, aber wäre es nicht besser, mutieren in einer foreach (yourLinqQuery) -Anweisung? Wenn eine Auswahl mutiert ist, erscheinen die Objekte verwirrend. –
versuchen * auf f.BarId gleich b.Id * –
@Doc Brown, das war eigentlich nur ein Tippfehler in meinem Beispiel (mein realer Code sagt 'equals'). Jetzt behoben. – devuxer