diff --git a/src/EFCore.Relational/Query/QuerySqlGenerator.cs b/src/EFCore.Relational/Query/QuerySqlGenerator.cs index 32052c99b66..e81bd776584 100644 --- a/src/EFCore.Relational/Query/QuerySqlGenerator.cs +++ b/src/EFCore.Relational/Query/QuerySqlGenerator.cs @@ -303,8 +303,6 @@ protected override Expression VisitSqlFunction(SqlFunctionExpression sqlFunction protected override Expression VisitTableValuedFunction(TableValuedFunctionExpression tableValuedFunctionExpression) { Check.NotNull(tableValuedFunctionExpression, nameof(tableValuedFunctionExpression)); - Check.DebugAssert(tableValuedFunctionExpression.Alias is not null, - $"{nameof(tableValuedFunctionExpression.Alias)} is null on {nameof(tableValuedFunctionExpression)}"); if (!string.IsNullOrEmpty(tableValuedFunctionExpression.StoreFunction.Schema)) { diff --git a/src/EFCore.Relational/Query/SqlExpressions/FromSqlExpression.cs b/src/EFCore.Relational/Query/SqlExpressions/FromSqlExpression.cs index 08738af05d1..eaf169d05ee 100644 --- a/src/EFCore.Relational/Query/SqlExpressions/FromSqlExpression.cs +++ b/src/EFCore.Relational/Query/SqlExpressions/FromSqlExpression.cs @@ -5,6 +5,7 @@ using System.Linq.Expressions; using JetBrains.Annotations; using Microsoft.EntityFrameworkCore.Utilities; +using CA = System.Diagnostics.CodeAnalysis; #nullable enable @@ -54,6 +55,16 @@ public FromSqlExpression([NotNull] string alias, [NotNull] string sql, [NotNull] Arguments = arguments; } + /// + /// The alias assigned to this table source. + /// + [CA.NotNull] + public override string? Alias + { + get => base.Alias!; + internal set => base.Alias = value; + } + /// /// The user-provided custom SQL for the table source. /// diff --git a/src/EFCore.Relational/Query/SqlExpressions/SetOperationBase.cs b/src/EFCore.Relational/Query/SqlExpressions/SetOperationBase.cs index df33268023c..bb4294130f3 100644 --- a/src/EFCore.Relational/Query/SqlExpressions/SetOperationBase.cs +++ b/src/EFCore.Relational/Query/SqlExpressions/SetOperationBase.cs @@ -4,6 +4,7 @@ using System; using JetBrains.Annotations; using Microsoft.EntityFrameworkCore.Utilities; +using CA = System.Diagnostics.CodeAnalysis; #nullable enable @@ -42,6 +43,16 @@ protected SetOperationBase( Source2 = source2; } + /// + /// The alias assigned to this table source. + /// + [CA.NotNull] + public override string? Alias + { + get => base.Alias!; + internal set => base.Alias = value; + } + /// /// The bool value indicating whether result will remove duplicate rows. /// diff --git a/src/EFCore.Relational/Query/SqlExpressions/TableValuedFunctionExpression.cs b/src/EFCore.Relational/Query/SqlExpressions/TableValuedFunctionExpression.cs index 82d49816815..d7ef9c59340 100644 --- a/src/EFCore.Relational/Query/SqlExpressions/TableValuedFunctionExpression.cs +++ b/src/EFCore.Relational/Query/SqlExpressions/TableValuedFunctionExpression.cs @@ -8,6 +8,7 @@ using JetBrains.Annotations; using Microsoft.EntityFrameworkCore.Metadata; using Microsoft.EntityFrameworkCore.Utilities; +using CA = System.Diagnostics.CodeAnalysis; #nullable enable @@ -44,6 +45,16 @@ private TableValuedFunctionExpression(string alias, IStoreFunction storeFunction Arguments = arguments; } + /// + /// The alias assigned to this table source. + /// + [CA.NotNull] + public override string? Alias + { + get => base.Alias!; + internal set => base.Alias = value; + } + /// /// The store function. ///