Я отправляю объект, который содержит 2 строковых массива из программы на C #, в программу на C ++ с rabbitmq.Класс в программе C # выглядит следующим образом:
namespace LPRRabbitMq.Class
{
[ProtoContract(SkipConstructor = true)]
public class BlackAndWhiteList
{
[ProtoMember(1)]
public string[] BlackList { get; set; }
[ProtoMember(2)]
public string[] WhiteList { get; set; }
}
}
Код для сериализации объекта в C #:
byte[] data;
using (var ms = new MemoryStream())
{
Serializer.Serialize(ms, blackAndWhite);
data = ms.ToArray();
}
Теперь я хочу получить данные в программе C ++,Я создал файл прото:
syntax = "proto2";
package Protobuf;
message BlackAndWhiteList {
optional bytes BlackList = 1;
optional bytes WhiteList = 2;
}
Я получаю сообщение о программе на C ++, но как я могу десериализовать данные и как в конечном итоге сохранить каждый массив строк в отдельном массиве?