Class FieldNameExtractor
Extracts field names from LINQ Expression tree.
Used for determining which fields to include in PVT.
Supports: simple fields, nested fields, Dictionary indexers, ContainsKey.
public class FieldNameExtractor : ExpressionVisitor
Inheritance
Properties
Methods
Extract<T>(Expression<Func<T, bool>>)
Extracts field names from expression.
public static HashSet<string> Extract<T>(Expression<Func<T, bool>> expression)
VisitMember(MemberExpression)
Visits member access (e.g., p.Name, p.Address.City).
protected override Expression VisitMember(MemberExpression node)
VisitMethodCall(MethodCallExpression)
Visits method calls (Dictionary indexer, ContainsKey, string methods).
protected override Expression VisitMethodCall(MethodCallExpression node)