wlandgraf
(Wagner Landgraf)
September 18, 2020, 3:00pm
2
Use TXDataJsonServerSerializer
instead of TAureliusJsonSerializer
. Indeed Aurelius serializer writes the name of mapped class members (fields in this case).
References:
Sorted.
procedure MyXdataService.DoSomething;
var
json : string;
obj : TBase;
serializer: TXDataJsonClientSerializer;
begin
obj := TDerived.create;
serializer := TXDataJsonClientSerializer.Create(TXDataOperationContext.Current.Handler.XModel);
json := serializer.WriteAs(obj);
serializer.free;
// do something with the json
end;
Hello Mark, 1. You don't need to assign the value to any variable, this will remove the hint.2. I don't know what to suggest in this case, I would have to have more details to guess what's going on. However, I'd suggest you use the serializer used by XData, not the TDataSnap one which is a legacy one. Here is how you could use it:
Serializer := TXDataJsonServerSerializer.Create(TXDataAureliusModel.Default);
try
Json := Serializer.Write(MyEntity);
// or
Serializer.Write(MyEntity, Content…