Protobuf (по умолчанию) не сериализует и не отправляет значения по умолчанию (например, 0 для целых чисел), поэтому я получил значение null BigQuery, когда я отправляю целое число со значением 0.
Мой код:
Код: Выделить всё
syntax = "proto3"
message SomeModel {
int64 id = 1;
int64 quantity = 2;
}
Код: Выделить всё
var records = new List();
records.Add(new SomeModel{Id = 1, Quantity = 0});
var protoData = new AppendRowsRequest.Types.ProtoData
{
WriterSchema = new ProtoSchema { ProtoDescriptor = SomeModel.Descriptor.ToProto() },
Rows = new ProtoRows
{
SerializedRows = { records.Select(r => r.ToByteString()/*Serialization is made here*/ ) }
}
};
Код: Выделить всё
| id | quantity|
|--------------|
| 1 | null |
Как я могу принудительно отправить/сериализовать количество = 0?
или тот же вопрос (более общий): Как я могу принудительно отправлять/сериализовать значения по умолчанию?< /п>
Подробнее здесь: https://stackoverflow.com/questions/740 ... default-va