From 1b6768c428576a0b6ce2c939bcc78d31d31caa35 Mon Sep 17 00:00:00 2001 From: Frederik Nielsen Date: Mon, 10 Feb 2025 10:05:21 +0100 Subject: [PATCH 1/2] Adding check for Edm.DateTime for old NAV versions --- ...Integration.Providers.ODataProvider.csproj | 2 +- src/ODataProvider.cs | 33 ++++++++----------- 2 files changed, 14 insertions(+), 21 deletions(-) diff --git a/src/Dynamicweb.DataIntegration.Providers.ODataProvider.csproj b/src/Dynamicweb.DataIntegration.Providers.ODataProvider.csproj index ecc4405..d3fc503 100644 --- a/src/Dynamicweb.DataIntegration.Providers.ODataProvider.csproj +++ b/src/Dynamicweb.DataIntegration.Providers.ODataProvider.csproj @@ -1,6 +1,6 @@  - 10.8.5 + 10.8.6 1.0.0.0 OData Provider The Odata Provider lets you fetch and map data from or to any OData endpoint. diff --git a/src/ODataProvider.cs b/src/ODataProvider.cs index 918142d..8e58577 100644 --- a/src/ODataProvider.cs +++ b/src/ODataProvider.cs @@ -460,26 +460,19 @@ private void AddPropertiesFromXMLReaderToTable(XmlReader xmlReader, Table table, /// private static Type GetColumnType(string columnTypeString) { - switch (columnTypeString) - { - case "Edm.String": - return typeof(string); - case "Edm.Guid": - return typeof(Guid); - case "Edm.Int32": - return typeof(int); - case "Edm.Decimal": - return typeof(decimal); - case "Edm.Stream": - return typeof(Stream); - case "Edm.Date": - return typeof(DateOnly); - case "Edm.DateTimeOffset": - return typeof(DateTime); - case "Edm.Boolean": - return typeof(bool); - } - return typeof(object); + return columnTypeString switch + { + "Edm.String" => typeof(string), + "Edm.Guid" => typeof(Guid), + "Edm.Int32" => typeof(int), + "Edm.Decimal" => typeof(decimal), + "Edm.Stream" => typeof(Stream), + "Edm.Date" => typeof(DateOnly), + "Edm.DateTimeOffset" => typeof(DateTime), + "Edm.DateTime" => typeof(DateTime), + "Edm.Boolean" => typeof(bool), + _ => typeof(object), + }; } /// From 170d88fc9aaa315c13a83fa3184c28f374e8f1c9 Mon Sep 17 00:00:00 2001 From: Frederik Nielsen Date: Mon, 10 Feb 2025 10:11:33 +0100 Subject: [PATCH 2/2] Adding more types --- src/ODataProvider.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/ODataProvider.cs b/src/ODataProvider.cs index 8e58577..7cb431a 100644 --- a/src/ODataProvider.cs +++ b/src/ODataProvider.cs @@ -466,6 +466,10 @@ private static Type GetColumnType(string columnTypeString) "Edm.Guid" => typeof(Guid), "Edm.Int32" => typeof(int), "Edm.Decimal" => typeof(decimal), + "Edm.Double" => typeof(double), + "Edm.Single" => typeof(Single), + "Edm.Int64" => typeof(long), + "Edm.Byte" => typeof(byte), "Edm.Stream" => typeof(Stream), "Edm.Date" => typeof(DateOnly), "Edm.DateTimeOffset" => typeof(DateTime),