Как десериализовать сообщение protobuf, содержащее байты, в объект C#C#

Место общения программистов C#
Ответить
Anonymous
 Как десериализовать сообщение protobuf, содержащее байты, в объект C#

Сообщение Anonymous »

Я использую C#.net Cote 8.0. У меня есть объект protobuf

Код: Выделить всё

syntax = "proto3";

option csharp_namespace = "Application.Messages";

message ApplicationConfig {
string domain = 1;
int32 port = 2;
string user_name = 3;
string password = 4;
bytes cert = 5;
}
Автоматически сгенерированный класс ApplicationConfig имеет свойство ByteString Cert (которое в данном случае пусто).
Когда я сериализую строку в json Я получаю:

Код: Выделить всё

{"domain":"somedomain","port":123,"userName":"Administrator","password":"888888","cert":[]}
Когда я пытаюсь десериализовать его

Код: Выделить всё

var appConfig = JsonSerializer.Deserialize(appConfigJson);
Я получаю пустой объект по умолчанию. Я почти уверен, что это связано с байтовым сертификатом .

Подробнее здесь: https://stackoverflow.com/questions/791 ... harp-objct
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»