I'm trying to create a low code app that has a GQI data source. I've created the automation script and it calls an API endpoint which returns JSON.
In the script I'm using System.Text.Json to deserialize it to my object.
var results = JsonSerializer.Deserialize<List<MaterialOverviewItem>>(stream, new JsonSerializerOptions { PropertyNameCaseInsensitive = true });
The script is set to Compile as library, however it's not showing up in my adhoc data sources when I create the app.
Everything looks fine in the code in visual studio, and I installed the System.Text.Json package, however if I validate it in dataminer it throws 3 errors and says it can't find the namespace for JsonSerializer.
Am I missing an extra step?
Thanks!
Hi Carl,
If I remember correctly it's only possible to add references to DLLs in the Skyline DataMiner > Files folder when using add hoc data sources. Would it be make a reference to the Newtonsoft DLL which is available in that folder?
Hi Jens,
I changed the code to use Newtonsoft.Json instead, and I have Newtonsoft.Json.dll in the Skyline DataMinerFiles folder on the server. However it still validates with 2 errors saying it can’t find the namespace or type.
I also tried adding it to the DLL references section in Advanced but that time it validated with an error saying it couldn’t find that file in System32.
What’s the standard way to include additional libraries in automation scripts set to Compile as library, so they can be used as Query data sources in the low code apps please? The API returns json, so I need to deserialize that to my object and then create the GQI rows and cells.
Hi Jens,
Checking the code snippet, I believe Carl is using System.Text.Json (not Newtonsoft).
Hi Carl,
Is it possible if you use Newtonsoft library to deserialize your JSON response instead of System.Text.Json? After this update you should not have a compilation error.