Skip to content

Commit 270799a

Browse files
committed
version bump to 10.0.2
1 parent 8f526a1 commit 270799a

File tree

6 files changed

+53
-49
lines changed

6 files changed

+53
-49
lines changed

.serena/project.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
# whether to use the project's gitignore file to ignore files
32
# Added on 2025-04-07
43
ignore_all_files_in_gitignore: true
@@ -113,3 +112,7 @@ encoding: utf-8
113112
# Note that when using the JetBrains backend, language servers are not used and this list is correspondingly ignored.
114113
languages:
115114
- csharp
115+
116+
# override of the corresponding setting in serena_config.yml, see the documentation there.
117+
# If null or missing, the value from the global config is used.
118+
symbol_info_budget:

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<PropertyGroup>
44
<Copyright>(c) $([System.DateTime]::Now.Year), Pawel Gerr. All rights reserved.</Copyright>
5-
<VersionPrefix>10.0.1</VersionPrefix>
5+
<VersionPrefix>10.0.2</VersionPrefix>
66
<Authors>Pawel Gerr</Authors>
77
<GenerateDocumentationFile>true</GenerateDocumentationFile>
88
<PackageProjectUrl>https://github.com/PawelGerr/Thinktecture.EntityFrameworkCore</PackageProjectUrl>

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -589,7 +589,7 @@ private string CreateMergeCommand<T>(
589589
sb.AppendLine(" AND ");
590590

591591
var columnName = property.GetColumnName(storeObject)
592-
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringType.Name}'.");
592+
?? throw new Exception($"The property '{property.Name}' has no column name.");
593593
var escapedColumnName = _sqlGenerationHelper.DelimitIdentifier(columnName);
594594

595595
sb.Append("(d.").Append(escapedColumnName).Append(" = s.").Append(escapedColumnName);
@@ -617,7 +617,7 @@ private string CreateMergeCommand<T>(
617617
}
618618

619619
var columnName = property.GetColumnName(storeObject)
620-
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringType.Name}'.");
620+
?? throw new Exception($"The property '{property.Name}' has no column name.");
621621
var escapedColumnName = _sqlGenerationHelper.DelimitIdentifier(columnName);
622622

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

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

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,8 @@ private ICachedTempTableStatement CreatePrimaryKeyStatement(SqlServerTempTablePr
143143
var columnNames = cacheKey.KeyProperties.Select(p =>
144144
{
145145
var storeObject = p.GetStoreObject();
146-
return sqlGenerationHelper.DelimitIdentifier(p.GetColumnName(storeObject));
146+
return _sqlGenerationHelper.DelimitIdentifier(p.GetColumnName(storeObject)
147+
?? throw new Exception($"The property '{p.Name}' has no column name."));
147148
});
148149

149150
var commaSeparatedColumns = String.Join(", ", columnNames);
@@ -153,19 +154,19 @@ private ICachedTempTableStatement CreatePrimaryKeyStatement(SqlServerTempTablePr
153154
return new CachedTempTableStatement<string>(commaSeparatedColumns,
154155
static (sqlGenerationHelper, name, commaSeparatedColumns) =>
155156
$"""
156-
IF(NOT EXISTS (SELECT * FROM tempdb.INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE CONSTRAINT_TYPE = 'PRIMARY KEY' AND OBJECT_ID(TABLE_CATALOG + '..' + TABLE_NAME) = OBJECT_ID('tempdb..{name}')))
157-
BEGIN
158-
ALTER TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
159-
ADD CONSTRAINT {sqlGenerationHelper.DelimitIdentifier($"PK_{name}_{Guid.NewGuid():N}")} PRIMARY KEY CLUSTERED ({commaSeparatedColumns});
160-
END
161-
""");
157+
IF(NOT EXISTS (SELECT * FROM tempdb.INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE CONSTRAINT_TYPE = 'PRIMARY KEY' AND OBJECT_ID(TABLE_CATALOG + '..' + TABLE_NAME) = OBJECT_ID('tempdb..{name}')))
158+
BEGIN
159+
ALTER TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
160+
ADD CONSTRAINT {sqlGenerationHelper.DelimitIdentifier($"PK_{name}_{Guid.NewGuid():N}")} PRIMARY KEY CLUSTERED ({commaSeparatedColumns});
161+
END
162+
""");
162163
}
163164

164165
return new CachedTempTableStatement<string>(commaSeparatedColumns, static (sqlGenerationHelper, name, commaSeparatedColumns) =>
165166
$"""
166-
ALTER TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
167-
ADD CONSTRAINT {sqlGenerationHelper.DelimitIdentifier($"PK_{name}_{Guid.NewGuid():N}")} PRIMARY KEY CLUSTERED ({commaSeparatedColumns});
168-
""");
167+
ALTER TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
168+
ADD CONSTRAINT {sqlGenerationHelper.DelimitIdentifier($"PK_{name}_{Guid.NewGuid():N}")} PRIMARY KEY CLUSTERED ({commaSeparatedColumns});
169+
""");
169170
}
170171

171172
private string GetTempTableCreationSql(IEntityType entityType, string tableName, SqlServerTempTableCreationOptions options)
@@ -186,11 +187,11 @@ private ICachedTempTableStatement CreateCachedStatement(SqlServerTempTableCreato
186187
return new CachedTempTableStatement<string>(columnDefinitions,
187188
static (sqlGenerationHelper, name, columnDefinitions) =>
188189
$"""
189-
CREATE TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
190-
(
191-
{columnDefinitions}
192-
);
193-
""");
190+
CREATE TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
191+
(
192+
{columnDefinitions}
193+
);
194+
""");
194195
}
195196

196197
return new CachedTempTableStatement<string>(columnDefinitions,
@@ -199,16 +200,16 @@ private ICachedTempTableStatement CreateCachedStatement(SqlServerTempTableCreato
199200
var escapedTableName = sqlGenerationHelper.DelimitIdentifier(name);
200201

201202
return $"""
202-
IF(OBJECT_ID('tempdb..{name}') IS NOT NULL)
203-
TRUNCATE TABLE {escapedTableName};
204-
ELSE
205-
BEGIN
206-
CREATE TABLE {escapedTableName}
207-
(
208-
{columnDefinitions}
209-
);
210-
END
211-
""";
203+
IF(OBJECT_ID('tempdb..{name}') IS NOT NULL)
204+
TRUNCATE TABLE {escapedTableName};
205+
ELSE
206+
BEGIN
207+
CREATE TABLE {escapedTableName}
208+
(
209+
{columnDefinitions}
210+
);
211+
END
212+
""";
212213
});
213214
}
214215

@@ -232,7 +233,7 @@ private string GetColumnsDefinitions(SqlServerTempTableCreatorCacheKey options)
232233

233234
var columnType = property.GetColumnType(storeObject.Value);
234235
var columnName = property.GetColumnName(storeObject.Value)
235-
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringType.Name}'.");
236+
?? throw new Exception($"The property '{property.Name}' has no column name.");
236237

237238
sb.Append('\t')
238239
.Append(_sqlGenerationHelper.DelimitIdentifier(columnName)).Append(' ')
@@ -305,7 +306,7 @@ private void CreatePkClause(
305306
{
306307
var storeObject = p.GetStoreObject();
307308
return p.GetColumnName(storeObject)
308-
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{p.DeclaringType.Name}'.");
309+
?? throw new Exception($"The property '{p.Name}' has no column name.");
309310
});
310311

311312
sb.AppendLine(",");

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ public static bool GenerateSetAndWhereClause(
182182
var index = reader.GetPropertyIndex(property);
183183
storeObject ??= property.GetStoreObject();
184184
var columnName = property.GetColumnName(storeObject.Value)
185-
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringType.Name}'.");
185+
?? throw new Exception($"The property '{property.Name}' has no column name.");
186186
var escapedColumnName = sqlGenerationHelper.DelimitIdentifier(columnName);
187187

188188
sb.Append("(").Append(escapedColumnName).Append(" = $p").Append(index);
@@ -238,7 +238,7 @@ public override string GetStatement(
238238
var property = _keyProperties[i];
239239
storeObject ??= property.GetStoreObject();
240240
var columnName = property.GetColumnName(storeObject.Value)
241-
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringType.Name}'.");
241+
?? throw new Exception($"The property '{property.Name}' has no column name.");
242242

243243
var escapedColumnName = sqlGenerationHelper.DelimitIdentifier(columnName);
244244
sb.Append(escapedColumnName);

src/Thinktecture.EntityFrameworkCore.Sqlite.Core/EntityFrameworkCore/TempTables/SqliteTempTableCreator.cs

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -100,23 +100,23 @@ private ICachedTempTableStatement CreateCachedStatement(SqliteTempTableCreatorCa
100100
return new CachedTempTableStatement<string>(columnDefinitions,
101101
static (sqlGenerationHelper, name, columnDefinitions) =>
102102
$"""
103-
CREATE TEMPORARY TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
104-
(
105-
{columnDefinitions}
106-
);
107-
""");
103+
CREATE TEMPORARY TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
104+
(
105+
{columnDefinitions}
106+
);
107+
""");
108108
}
109109

110110
return new CachedTempTableStatement<string>(columnDefinitions,
111111
static (sqlGenerationHelper, name, columnDefinitions) =>
112112
$"""
113-
DROP TABLE IF EXISTS {sqlGenerationHelper.DelimitIdentifier(name, "temp")};
113+
DROP TABLE IF EXISTS {sqlGenerationHelper.DelimitIdentifier(name, "temp")};
114114
115-
CREATE TEMPORARY TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
116-
(
117-
{columnDefinitions}
118-
);
119-
""");
115+
CREATE TEMPORARY TABLE {sqlGenerationHelper.DelimitIdentifier(name)}
116+
(
117+
{columnDefinitions}
118+
);
119+
""");
120120
}
121121

122122
private string GetColumnsDefinitions(SqliteTempTableCreatorCacheKey options)
@@ -136,7 +136,7 @@ private string GetColumnsDefinitions(SqliteTempTableCreatorCacheKey options)
136136

137137
storeObject ??= property.GetStoreObject();
138138
var columnName = property.GetColumnName(storeObject.Value)
139-
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{property.DeclaringType.Name}'.");
139+
?? throw new Exception($"The property '{property.Name}' has no column name.");
140140
var columnType = property.GetColumnType(storeObject.Value);
141141

142142
sb.Append("\t\t")
@@ -149,9 +149,9 @@ private string GetColumnsDefinitions(SqliteTempTableCreatorCacheKey options)
149149
if (options.PrimaryKeys.Count != 1 || !property.Equals(options.PrimaryKeys.First()))
150150
{
151151
throw new NotSupportedException($"""
152-
SQLite does not allow the property '{property.Name}' of the entity '{property.DeclaringType.Name}' to be an AUTOINCREMENT column unless this column is the PRIMARY KEY.
153-
Currently configured primary keys: [{String.Join(", ", options.PrimaryKeys.Select(p => p.Name))}]
154-
""");
152+
SQLite does not allow the property '{property.Name}' of the entity '{property.DeclaringType.Name}' to be an AUTOINCREMENT column unless this column is the PRIMARY KEY.
153+
Currently configured primary keys: [{String.Join(", ", options.PrimaryKeys.Select(p => p.Name))}]
154+
""");
155155
}
156156

157157
sb.Append(" PRIMARY KEY AUTOINCREMENT");
@@ -203,7 +203,7 @@ private void CreatePkClause(IReadOnlyCollection<IProperty> keyProperties, String
203203
{
204204
var storeObject = p.GetStoreObject();
205205
return p.GetColumnName(storeObject)
206-
?? throw new Exception($"Could not create StoreObjectIdentifier for table '{p.DeclaringType.Name}'.");
206+
?? throw new Exception($"The property '{p.Name}' has no column name.");
207207
});
208208

209209
sb.AppendLine(",");

0 commit comments

Comments
 (0)