diff --git a/src/NHibernate/Type/Int32Type.cs b/src/NHibernate/Type/Int32Type.cs index f19fb1148f..5db8788a39 100644 --- a/src/NHibernate/Type/Int32Type.cs +++ b/src/NHibernate/Type/Int32Type.cs @@ -30,8 +30,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) };