Skip to content

Commit ced35f3

Browse files
committed
Added comments
1 parent 13c5235 commit ced35f3

File tree

14 files changed

+62
-23
lines changed

14 files changed

+62
-23
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,14 @@
11
namespace Thinktecture.EntityFrameworkCore.Internal;
22

3+
/// <summary>
4+
/// Annotation names.
5+
/// </summary>
36
public static class ThinktectureBulkOperationsAnnotationNames
47
{
5-
public const string Prefix = "Thinktecture:BulkOperations:";
6-
public const string TempTable = Prefix + "TempTable";
8+
private const string _PREFIX = "Thinktecture:BulkOperations:";
9+
10+
/// <summary>
11+
/// Annotation name for temp table.
12+
/// </summary>
13+
public const string TEMP_TABLE = _PREFIX + "TempTable";
714
}

src/Thinktecture.EntityFrameworkCore.BulkOperations/Extensions/BulkOperationsRelationalQueryableMethodTranslatingExpressionVisitorExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ private static Expression TranslateFromTempTable(
6666
var tempTableName = tempTableInfo.Name ?? throw new Exception("No temp table name provided.");
6767

6868
var selectExpression = (SelectExpression)shapedQueryExpression.QueryExpression;
69-
var newSelectExpression = selectExpression.AddAnnotation(new Annotation(ThinktectureBulkOperationsAnnotationNames.TempTable, tempTableName));
69+
var newSelectExpression = selectExpression.AddAnnotation(new Annotation(ThinktectureBulkOperationsAnnotationNames.TEMP_TABLE, tempTableName));
7070

7171
return shapedQueryExpression.Update(newSelectExpression, shapedQueryExpression.ShaperExpression);
7272
}
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,14 @@
11
namespace Thinktecture.EntityFrameworkCore.Internal;
22

3+
/// <summary>
4+
/// Annotation names.
5+
/// </summary>
36
public static class ThinktectureRelationalAnnotationNames
47
{
5-
public const string Prefix = "Thinktecture:Relational:";
6-
public const string TableHints = Prefix + "TableHints";
8+
private const string _PREFIX = "Thinktecture:Relational:";
9+
10+
/// <summary>
11+
/// Annotation name for table hints.
12+
/// </summary>
13+
public const string TABLE_HINTS = _PREFIX + "TableHints";
714
}

src/Thinktecture.EntityFrameworkCore.Relational/Extensions/RelationalCollectionExtensions.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,16 @@
22

33
namespace Thinktecture;
44

5+
/// <summary>
6+
/// Extensions for collections.
7+
/// </summary>
58
public static class RelationalCollectionExtensions
69
{
10+
/// <summary>
11+
/// Computes the hashcode for navigations.
12+
/// </summary>
13+
/// <param name="navigations">Navigations to compute hashcode for.</param>
14+
/// <param name="hashCode">Instance of <see cref="HashCode"/> to use.</param>
715
public static void ComputeHashCode(this IEnumerable<INavigation> navigations, HashCode hashCode)
816
{
917
foreach (var navigation in navigations)

src/Thinktecture.EntityFrameworkCore.Relational/Extensions/RelationalEntityDataReaderExtensions.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,18 @@
55

66
namespace Thinktecture;
77

8+
/// <summary>
9+
/// Extensions for <see cref="IEntityDataReader"/>.
10+
/// </summary>
811
[SuppressMessage("Usage", "EF1001:Internal EF Core API usage.")]
912
public static class RelationalEntityDataReaderExtensions
1013
{
14+
/// <summary>
15+
/// Gets the index of the provided <paramref name="property"/>.
16+
/// </summary>
17+
/// <param name="reader">Entity data reader.</param>
18+
/// <param name="property">Property to get the index for.</param>
19+
/// <returns>Index of the property.</returns>
1120
public static int GetPropertyIndex(this IEntityDataReader reader, IProperty property)
1221
{
1322
return reader.GetPropertyIndex(new PropertyWithNavigations(property, Array.Empty<Navigation>()));

src/Thinktecture.EntityFrameworkCore.Relational/Extensions/RelationalQueryableMethodTranslatingExpressionVisitorExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ private static Expression TranslateTableHints(
6161
return shapedQueryExpression;
6262

6363
var selectExpression = (SelectExpression)shapedQueryExpression.QueryExpression;
64-
var newSelectExpression = selectExpression.AddAnnotation(new Annotation(ThinktectureRelationalAnnotationNames.TableHints, tableHints));
64+
var newSelectExpression = selectExpression.AddAnnotation(new Annotation(ThinktectureRelationalAnnotationNames.TABLE_HINTS, tableHints));
6565

6666
return shapedQueryExpression.Update(newSelectExpression, shapedQueryExpression.ShaperExpression);
6767
}

src/Thinktecture.EntityFrameworkCore.SqlServer/EntityFrameworkCore/BulkOperations/SqlServerBulkOperationExecutor.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -472,7 +472,8 @@ private string CreateMergeCommand<T>(
472472
if (!isFirstIteration)
473473
sb.AppendLine(" AND ");
474474

475-
var columnName = property.GetColumnName(storeObject);
475+
var columnName = property.GetColumnName(storeObject)
476+
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringEntityType.Name}'.");
476477
var escapedColumnName = _sqlGenerationHelper.DelimitIdentifier(columnName);
477478

478479
sb.Append("(d.").Append(escapedColumnName).Append(" = s.").Append(escapedColumnName);
@@ -499,7 +500,8 @@ private string CreateMergeCommand<T>(
499500
.Append("\tUPDATE SET ");
500501
}
501502

502-
var columnName = property.GetColumnName(storeObject);
503+
var columnName = property.GetColumnName(storeObject)
504+
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringEntityType.Name}'.");
503505
var escapedColumnName = _sqlGenerationHelper.DelimitIdentifier(columnName);
504506

505507
sb.Append("d.").Append(escapedColumnName).Append(" = s.").Append(escapedColumnName);

src/Thinktecture.EntityFrameworkCore.SqlServer/EntityFrameworkCore/Query/ThinktectureSqlServerQuerySqlGenerator.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ protected override Expression VisitTable(TableExpression tableExpression)
8484
{
8585
ArgumentNullException.ThrowIfNull(tableExpression);
8686

87-
var tableHints = tableExpression.FindAnnotation(ThinktectureRelationalAnnotationNames.TableHints)?.Value as IReadOnlyList<ITableHint>;
87+
var tableHints = tableExpression.FindAnnotation(ThinktectureRelationalAnnotationNames.TABLE_HINTS)?.Value as IReadOnlyList<ITableHint>;
8888

8989
var visitedExpression = VisitTableOrTempTable(tableExpression);
9090

@@ -108,7 +108,7 @@ protected override Expression VisitTable(TableExpression tableExpression)
108108

109109
private Expression VisitTableOrTempTable(TableExpression tableExpression)
110110
{
111-
var tempTable = tableExpression.FindAnnotation(ThinktectureBulkOperationsAnnotationNames.TempTable);
111+
var tempTable = tableExpression.FindAnnotation(ThinktectureBulkOperationsAnnotationNames.TEMP_TABLE);
112112

113113
if (tempTable is not null)
114114
{

src/Thinktecture.EntityFrameworkCore.SqlServer/EntityFrameworkCore/TempTables/SqlServerTempTableCreator.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,8 @@ private string GetColumnsDefinitions(SqlServerTempTableCreatorCacheKey options)
226226
storeObject ??= property.GetStoreObject();
227227

228228
var columnType = property.GetColumnType(storeObject.Value);
229-
var columnName = property.GetColumnName(storeObject.Value);
229+
var columnName = property.GetColumnName(storeObject.Value)
230+
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringEntityType.Name}'.");
230231

231232
sb.Append('\t')
232233
.Append(_sqlGenerationHelper.DelimitIdentifier(columnName)).Append(' ')
@@ -298,7 +299,8 @@ private void CreatePkClause(
298299
var columnNames = keyProperties.Select(p =>
299300
{
300301
var storeObject = p.GetStoreObject();
301-
return p.GetColumnName(storeObject);
302+
return p.GetColumnName(storeObject)
303+
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{p.DeclaringEntityType.Name}'.");
302304
});
303305

304306
sb.AppendLine(",");

src/Thinktecture.EntityFrameworkCore.Sqlite/EntityFrameworkCore/BulkOperations/SqliteCommandBuilder.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,8 @@ public static bool GenerateSetAndWhereClause(
181181
var property = keyProperties[i];
182182
var index = reader.GetPropertyIndex(property);
183183
storeObject ??= property.GetStoreObject();
184-
var columnName = property.GetColumnName(storeObject.Value);
184+
var columnName = property.GetColumnName(storeObject.Value)
185+
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringEntityType.Name}'.");
185186
var escapedColumnName = sqlGenerationHelper.DelimitIdentifier(columnName);
186187

187188
sb.Append("(").Append(escapedColumnName).Append(" = $p").Append(index);
@@ -236,7 +237,8 @@ public override string GetStatement(
236237

237238
var property = _keyProperties[i];
238239
storeObject ??= property.GetStoreObject();
239-
var columnName = property.GetColumnName(storeObject.Value);
240+
var columnName = property.GetColumnName(storeObject.Value)
241+
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringEntityType.Name}'.");
240242

241243
var escapedColumnName = sqlGenerationHelper.DelimitIdentifier(columnName);
242244
sb.Append(escapedColumnName);

0 commit comments

Comments
 (0)