C # Roslyn получает весь список <T>в файле - PullRequest
0 голосов
/ 26 сентября 2019

Я пытаюсь найти:

private List<Roostermomenten> momenten;

Дерево синтаксиса для этого выглядит следующим образом:

Syntax tree

Я понялЯ мог бы получить этот список, выполнив одно из следующих действий:

var roostermomentenList1 = from variables in roosterRoot.DescendantNodes().OfType<VariableDeclarationSyntax>().Select(p => p.ChildNodesAndTokens().OfType<GenericNameSyntax>())
                           select variables;

var roostermomentenList2 = from variables in  roosterRoot.DescendantNodes().OfType<VariableDeclarationSyntax>()
                           select variables.DescendantNodes().OfType<GenericNameSyntax>().Where(p => p.Identifier.ValueText == "List");

Но они оба возвращают IEnumerable с 4 членами, из которых 3 пустые.Но у меня есть только 1 Список в моем классе.Result

Я пытаюсь проверить, есть ли у класса список.Как лучше проверить, существует ли этот список?Как я могу пройти по дереву до IdentifierName-> identifierToken, чтобы проверить, равно ли оно SyntaxKind.List?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...