У меня есть следующий исходный код:
public void MethodAssignment_WithIndexQuery_1(Customer from1, Customer to1, decimal amount)
{
var customers = _customerRepository.GetWhere(to1.Age);
Customer indexCustomer1 = customers[(from1.Age + to1.Age)* to1.Age];
}
, и у меня есть данный синтаксический узел: node = from1.Age выражения в аргументе индекса.
Выполнение этого приводит к нулю:
MethodDeclarationSyntax callingMethod = node
.GetLocation()
.SourceTree
.GetRoot()
.FindToken(location.SourceSpan.Start)
.Parent
.AncestorsAndSelf()
.OfType<MethodDeclarationSyntax>()
.FirstOrDefault();
Выполнение node.Parent.Parent
возвращает BinaryExpressionSyntax AddExpression from1.Age * to2.Age+ to1.Age * to2.Age
и выполнение Родитель этого дает null .
Как я могу найти MethodDeclaration
, который охватывает данный синтаксический узел?