我正在尝试将数据插入Union类型的flatbuffer字段中。但是,这些数据以序列化的形式到达了我,所以我确实对其进行了反序列化。将其添加到Union字段并创建flatbuffer后,我尝试将其解析为JSON。结果不反映添加到“联合”字段中的数据。
下面是我的.fbs-
namespace Event;
enum ErrorCategory : short
{
_undefined_ = -1,
firmwareAssert,
hardwareFailure
}
table FirmwareAssert
{
code : string (required);
file : string;
version : string (required);
line : double;
type : string;
}
table SystemError
{
errorCategory : ErrorCategory = _undefined_;
firmwareAssert : FirmwareAssert;
}
union EventDetail
{
SystemError
}
table Event
{
eventCategory : string (required);
sequenceNumber : uint32;
eventDetail : EventDetail;
}
root_type Event;
我尝试创建一个EventDetailUnion()并将类型和反序列化的缓冲区添加到它的值中,接着是EventDetailUnion :: Pack()和CreateEvent。是否应该有其他方法可以将数据添加到“联合字段”?