From 810539ba48ed9b799b1612c131a9a269949039ab Mon Sep 17 00:00:00 2001 From: Dmitriy Benyuk Date: Thu, 27 Jun 2024 12:32:39 +0300 Subject: [PATCH] 20222-Null-handling --- ...Integration.Providers.ODataProvider.csproj | 8 ++--- src/ODataProvider.cs | 32 ++++++++++--------- 2 files changed, 21 insertions(+), 19 deletions(-) diff --git a/src/Dynamicweb.DataIntegration.Providers.ODataProvider.csproj b/src/Dynamicweb.DataIntegration.Providers.ODataProvider.csproj index b9704a6..ef42dce 100644 --- a/src/Dynamicweb.DataIntegration.Providers.ODataProvider.csproj +++ b/src/Dynamicweb.DataIntegration.Providers.ODataProvider.csproj @@ -1,6 +1,6 @@  - 10.0.23 + 10.6.0 1.0.0.0 OData Provider The Odata Provider lets you fetch and map data from or to any OData endpoint. @@ -15,7 +15,7 @@ Copyright © 2023 Dynamicweb Software A/S - net7.0 + net8.0 true true true @@ -24,8 +24,8 @@ snupkg - - + + diff --git a/src/ODataProvider.cs b/src/ODataProvider.cs index 1159bd3..55e12d6 100644 --- a/src/ODataProvider.cs +++ b/src/ODataProvider.cs @@ -686,29 +686,31 @@ public override bool RunJob(Job job) while (!sourceReader.IsDone()) { var sourceRow = sourceReader.GetNext(); - ProcessInputRow(mapping, sourceRow); - writer.Write(sourceRow); - if (sourceReaderIsResponseWriter) + if (ProcessInputRow(sourceRow, mapping)) { - if (writer.PostBackObject != null && writer.PostBackObject.Count > 0) + writer.Write(sourceRow); + if (sourceReaderIsResponseWriter) { - Dictionary responseToWrite = new Dictionary(); - foreach (var item in responseMappingCollection) + if (writer.PostBackObject != null && writer.PostBackObject.Count > 0) { - if (item.HasScriptWithValue) + Dictionary responseToWrite = new Dictionary(); + foreach (var item in responseMappingCollection) { - responseToWrite.Add(item.DestinationColumn.Name, item.GetScriptValue()); - } - else - { - var postBackValue = writer.GetPostBackValue(item); - if (postBackValue != null) + if (item.HasScriptWithValue) + { + responseToWrite.Add(item.DestinationColumn.Name, item.GetScriptValue()); + } + else { - responseToWrite.Add(item.DestinationColumn.Name, postBackValue); + var postBackValue = writer.GetPostBackValue(item); + if (postBackValue != null) + { + responseToWrite.Add(item.DestinationColumn.Name, postBackValue); + } } } + responseMappingWriter.Write(responseToWrite); } - responseMappingWriter.Write(responseToWrite); } } }