Skip to content
This repository was archived by the owner on Dec 24, 2022. It is now read-only.

Commit 24a831a

Browse files
committed
Guard against mixing table + scalar types
1 parent b601129 commit 24a831a

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/ServiceStack.OrmLite/OrmLiteUtils.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,9 @@ internal static List<Tuple<FieldDefinition, int, IOrmLiteConverter>[]> GetMultiI
305305
foreach (var modelType in genericArgs)
306306
{
307307
var modelDef = modelType.GetModelDefinition();
308+
if (modelDef == null)
309+
throw new Exception($"'{modelType.Name}' is not a table type");
310+
308311
var endPos = startPos;
309312
for (; endPos < reader.FieldCount; endPos++)
310313
{
@@ -314,9 +317,7 @@ internal static List<Tuple<FieldDefinition, int, IOrmLiteConverter>[]> GetMultiI
314317

315318
var noEOT = endPos == reader.FieldCount; // If no explicit EOT delimiter, split by field count
316319
if (genericArgs.Length > 0 && noEOT)
317-
{
318320
endPos = startPos + modelDef.FieldDefinitionsArray.Length;
319-
}
320321

321322
var indexCache = reader.GetIndexFieldsCache(modelDef, dialectProvider, onlyFields,
322323
startPos: startPos, endPos: endPos);

0 commit comments

Comments
 (0)