diff --git a/src/NHibernate/Type/Int32Type.cs b/src/NHibernate/Type/Int32Type.cs index f5a63bf38a..914b512c97 100644 --- a/src/NHibernate/Type/Int32Type.cs +++ b/src/NHibernate/Type/Int32Type.cs @@ -31,8 +31,10 @@ public override object Get(DbDataReader rs, int index, ISessionImplementor sessi { try { - return rs[index] switch + var value = rs[index]; + return value switch { + int _ => value, BigInteger bi => (int) bi, var c => Convert.ToInt32(c) };