SyntaxNode от Microsoft.CodeAnalysis (Roslyn) показывает IncompleteMember, хотя класс в порядке

Я должен просмотреть много файлов C#, чтобы извлечь некоторые данные. Сам процесс сделан и работал до сих пор.
Но теперь это больше не работает. Понятия не имею почему. Сначала я не мог построить SyntaxTree. При переходе к document.GetsyntaxTreeAsync() он создает пустой синтаксис.

Когда я работал над этим (идя var root = SyntaxFactory.ParseSyntaxTree(File.ReadAllText(document.FileName)).GetRoot();), возникла другая проблема, для которой я не могу найти решение.

Я получаю текущее имя класса, начиная с внутреннего узла (пожалуйста, не спрашивайте почему - я его не писал), собираюсь

node.Ancestors().OfType<ClassDeclarationSyntax>().First.Identifier.ToString();

И теперь нет ClassDeclarationSyntax, потому что большинство узлов-предков IncompleteMembers. В прекрасном классе. Компилирует, запускает и т. Д.

Просто библиотека CodeAnalysis не найдет его.

Когда я иду node.SyntaxTree.GetRoot().ToFullString() он на самом деле имеет весь файл, без ошибок.

0 ответов

Другие вопросы по тегам