Please enable JavaScript to view this site.

Codolex

The JSON to entity activity can be used to parse a JSON string into an entity.

uses System.JSON.TJSONObject

 

JSONToEntiy

Activity properties

 

begin

 var TaskFromJSON: HelpAndManualScreenshots.DataSource.CodolexDatasource.ITask;

 TaskFromJSON := nil;

var ResultCollection := TCodolexCollections.CreateList<HelpAndManualScreenshots.DataSource.CodolexDatasource.ITask>;

var ParsedJson := TJsonObject.ParseJSONValue(StringWithJSON, True, True);

try

  var Entity: HelpAndManualScreenshots.DataSource.CodolexDatasource.ITask;

  var Adapter: ICodolexEntityJSONAdapter<HelpAndManualScreenshots.DataSource.CodolexDatasource.ITask>;

   Adapter := TTaskJSONAdapter.Create;

   

  if (ParsedJson is TJsonArray) then

  begin

    var JsonArray := ParsedJson as TJsonArray;

    var NbOfItems := JsonArray.Count;

     

    if (NbOfItems = 0) then

       Exit;

     

    for var ArrayElement in JsonArray do

    begin

      if not (ArrayElement is TJsonObject) then

         Continue;

       

      var ElementObject := ArrayElement.GetValue<TJsonObject>();

       

       Entity := Adapter.MapToEntity(ElementObject);

       

       ResultCollection.Add(Entity);

    end;

  end

  else if ParsedJson is TJsonObject then

  begin

     Entity := Adapter.MapToEntity(ParsedJson);

     

     ResultCollection.Add(Entity);

  end;

   

  finally

     ParsedJson.Free;

     TaskFromJSON := ResultCollection.First;

  end;

end;

resulting code

 

When the option multiple for expected results is selected, the activity does return a list instead of a single entity.

© by GDK Software