public override void VisitMainFromClause(MainFromClause fromClause, QueryModel queryModel) { if (_queryParts._visitingSubQueryExpression) { var name = fromClause.FromExpression.ToString().Split(".".ToCharArray(), 2)[1]; _queryParts.AddFromPart($"{name}"); } else { _queryParts.AddFromPart($"{_table}"); } //var tableName = fromClause.ItemType.GetTypeInfo().GetCustomAttribute<TableAttribute>().Name; base.VisitMainFromClause(fromClause, queryModel); }
/// Adds a FROM part of the SQL query. /// /// If a subquery parts aggregator is open, redirects the call to it instead. public void AddFromPart(string fromPart) { if (_visitingSubQueryExpression) { _subQueryExpressionPartsAggregator.AddFromPart(fromPart); } else if (FromParts.Count(x => x.Contains(fromPart)) == 0) { FromParts.Add(fromPart); } }