diff --git a/src/EFCore.Jet/EFCore.Jet.csproj b/src/EFCore.Jet/EFCore.Jet.csproj
index 485833e..ee2e6b5 100644
--- a/src/EFCore.Jet/EFCore.Jet.csproj
+++ b/src/EFCore.Jet/EFCore.Jet.csproj
@@ -44,11 +44,6 @@
-
-
-
-
-
diff --git a/src/EFCore.Jet/Storage/Internal/JetDecimalTypeMapping.cs b/src/EFCore.Jet/Storage/Internal/JetDecimalTypeMapping.cs
index 7945adc..bc1f84d 100644
--- a/src/EFCore.Jet/Storage/Internal/JetDecimalTypeMapping.cs
+++ b/src/EFCore.Jet/Storage/Internal/JetDecimalTypeMapping.cs
@@ -1,7 +1,6 @@
using System.Data;
using System.Data.Common;
-using System.Data.Odbc;
-using System.Data.OleDb;
+using System.Linq;
using JetBrains.Annotations;
using Microsoft.EntityFrameworkCore.Storage;
@@ -83,13 +82,18 @@ namespace EntityFrameworkCore.Jet.Storage.Internal
//Using Decimal is fine for OleDb but Odbc doesn't like it.
//Have to use Numeric for Odbc.
//Suspect this will also fix any formatting erros with , and . for decimal separator and space and , for digit separator
- if (parameter is OdbcParameter odbcParameter)
+ //OdbcType.Numeric = 7;
+ //OleDbType.Numeric = 131;
+ var setodbctype = parameter.GetType().GetMethods().FirstOrDefault(x => x.Name == "set_OdbcType");
+ var setoledbtype = parameter.GetType().GetMethods().FirstOrDefault(x => x.Name == "set_OleDbType");
+
+ if (setodbctype != null)
{
- odbcParameter.OdbcType = OdbcType.Numeric;
+ setodbctype.Invoke(parameter, new object?[] { 7 });
}
- else if (parameter is OleDbParameter oleDbParameter)
+ else if (setoledbtype != null)
{
- oleDbParameter.OleDbType = OleDbType.Numeric;
+ setoledbtype.Invoke(parameter, new object?[] { 131 });
}
if (Size.HasValue
&& Size.Value != -1)