Class SqlTableSource
public sealed class SqlTableSource : SqlExpressionBase, ISqlTableSource, ISqlExpression, IQueryElement, IEquatable<ISqlExpression>
- Inheritance
-
SqlTableSource
- Implements
- Inherited Members
- Extension Methods
Constructors
SqlTableSource(ISqlTableSource, string?)
public SqlTableSource(ISqlTableSource source, string? alias)
Parameters
sourceISqlTableSourcealiasstring
SqlTableSource(ISqlTableSource, string?, params SqlJoinedTable[]?)
public SqlTableSource(ISqlTableSource source, string? alias, params SqlJoinedTable[]? joins)
Parameters
sourceISqlTableSourcealiasstringjoinsSqlJoinedTable[]
SqlTableSource(ISqlTableSource, string?, IEnumerable<SqlJoinedTable>, IEnumerable<ISqlExpression[]>?)
public SqlTableSource(ISqlTableSource source, string? alias, IEnumerable<SqlJoinedTable> joins, IEnumerable<ISqlExpression[]>? uniqueKeys)
Parameters
sourceISqlTableSourcealiasstringjoinsIEnumerable<SqlJoinedTable>uniqueKeysIEnumerable<ISqlExpression[]>
Properties
Alias
public string? Alias { get; set; }
Property Value
All
public SqlField All { get; }
Property Value
ElementType
AST node type.
public override QueryElementType ElementType { get; }
Property Value
HasUniqueKeys
public bool HasUniqueKeys { get; }
Property Value
this[ISqlTableSource]
public SqlTableSource? this[ISqlTableSource table] { get; }
Parameters
tableISqlTableSource
Property Value
this[ISqlTableSource, string?]
public SqlTableSource? this[ISqlTableSource table, string? alias] { get; }
Parameters
tableISqlTableSourcealiasstring
Property Value
Joins
public List<SqlJoinedTable> Joins { get; }
Property Value
Precedence
public override int Precedence { get; }
Property Value
Source
public ISqlTableSource Source { get; set; }
Property Value
SourceID
public int SourceID { get; }
Property Value
SqlTableType
public SqlTableType SqlTableType { get; }
Property Value
SystemType
public override Type? SystemType { get; }
Property Value
UniqueKeys
Contains list of columns that build unique key for Source. Used in JoinOptimizer for safely removing sub-query from resulting SQL.
public List<ISqlExpression[]> UniqueKeys { get; }
Property Value
Methods
CanBeNullable(NullabilityContext)
public override bool CanBeNullable(NullabilityContext nullability)
Parameters
nullabilityNullabilityContext
Returns
Deconstruct(out ISqlTableSource)
public void Deconstruct(out ISqlTableSource source)
Parameters
sourceISqlTableSource
Equals(ISqlExpression?)
public override bool Equals(ISqlExpression? other)
Parameters
otherISqlExpression
Returns
Equals(ISqlExpression, Func<ISqlExpression, ISqlExpression, bool>)
public override bool Equals(ISqlExpression other, Func<ISqlExpression, ISqlExpression, bool> comparer)
Parameters
otherISqlExpressioncomparerFunc<ISqlExpression, ISqlExpression, bool>
Returns
ForEach<TContext>(TContext, Action<TContext, SqlTableSource>, HashSet<SelectQuery>)
public void ForEach<TContext>(TContext context, Action<TContext, SqlTableSource> action, HashSet<SelectQuery> visitedQueries)
Parameters
contextTContextactionAction<TContext, SqlTableSource>visitedQueriesHashSet<SelectQuery>
Type Parameters
TContext
GetElementHashCode()
public override int GetElementHashCode()
Returns
GetJoinNumber()
public int GetJoinNumber()
Returns
GetTables()
public IEnumerable<ISqlTableSource> GetTables()
Returns
Modify(ISqlTableSource)
public void Modify(ISqlTableSource source)
Parameters
sourceISqlTableSource
ToString(QueryElementTextWriter)
Generates debug text representation of AST node.
public override QueryElementTextWriter ToString(QueryElementTextWriter writer)
Parameters
writerQueryElementTextWriter