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 jsonend;
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, Conten…