Frage

Was ist die maximun dass LINQ Ausdruck Baum tun?

Kann es eine Klasse definieren? Wie wäre es ein Verfahren, mit all dem angegebenen Namen, Modifikatoren, Parametertype und Rückgabetyp?

Muss das Programm definiert immer den Baum selbst? Ist es möglich, den Baum von einer bestimmten C # Datei zu generieren?

Wo kann ich Ressourcen über das Schreiben von einfachen bis zu Expression Baum und Expression Baumes Besucher zu lernen? (Artikel und Videos werden groß sein)

Vielen Dank für diejenigen, die in der Lage sind zu helfen ...

War es hilfreich?

Lösung

In C # 3, Ausdruck Bäume darstellen Ausdrücke . Daher der Name. Und sie werden weiter auf eine Teilmenge von C # Ausdrücke beschränkt -. Keine Zuordnung Ausdrücke, keine Ausdrücke Zeigertypen beteiligt, und so weiter

In den Bibliotheken, die mit C # 4 versenden, haben wir den Ausdruck Baum Bibliothek erweitert auch Aussage Bäume zu unterstützen. Allerdings wird C # 4 nicht automatisch eine Erklärung-Lambda in einen „Anweisung Baum“.

übersetzen

Das ist eine offensichtliche und nützliche Funktion, die wir einfach nicht die Zeit zu bekommen hatten für C # 4. Wir es für hypothetische zukünftige Versionen berücksichtigen würden. Wenn Sie ein wirklich großes Benutzerszenario für Aussage Bäume haben, würde ich gerne hören.

Die offensichtliche weitere Verlängerung auf, dass alle Erklärung Bäume, die Klassendeklarationen, struct Erklärungen, und so weiter darstellen würde. Mit Gesamt Homoikonizität zwischen der Sprache C # und der Ausdrucksbaum Bibliothek wäre genial. Es würde alle möglichen interessanten metaprogramming Szenarien ermöglichen. Aber das wird nicht so bald passieren, also nicht bekommen Ihre Hoffnungen. Das ist eher ein langfristiger Traum von mir, die nie passieren könnten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top