Die Methode Microsoft.CodeAnalysis.Editing.ImportAdderService.AddImportsAsync
besucht nur Nicht-Trivia-Syntaxknoten und fügt daher keine Namespace-Importe für sie hinzu. Dies führt zu dem Ergebnis, dass Cref's in XML-Dokumentationskommentaren nicht auf ihre Kurznamen vereinfacht werden können, wenn% code% verwendet wird.
Das größte Problem, das ich damit habe, ist, dass die Vereinfachung zu inkonsistenten Ergebnissen führen kann. Angenommen, Sie haben mehrere Crefs und für einen Cref haben Sie einen Namespace-Import (eingeführt aufgrund eines anderen Typs, der tatsächlich in einem Nicht-Trivia-Knoten verwendet wird). Dann wird diese eine Kreation gekürzt und die andere nicht.
Zur Klarstellung.
Vor der Anwendung von Microsoft.CodeAnalysis.Simplification.Simplifier
und ImportAdderService
:
Nach dem Anwenden von Simplifier
und ImportAdderService
:
Frage
Kann ich dieses Problem umgehen? Wir möchten auf jeden Fall Usings für alle Typen hinzufügen, auf die in cref Tags verwiesen wird.
Oder ist das sogar geplant?
Ich denke, es ist in der Tat ein fehlendes Feature, um% cco_de% den Besuch von Trivia-Syntaxknoten zu ermöglichen.