У меня есть служба WCF, которая возвращает байт [] сериализованных данных protobuf-net.Первоначально это было размещено через стандартные настройки webHttpBinding (SOAP), и все работало правильно.Недавно я узнал, что мне нужно вызывать HTTP-вызовы GET и POST напрямую с нашего клиента, поэтому я подумал, что было бы проще переключиться на использование службы RESTful.Я переключился на использование атрибута WebGet и шаблона WCF REST.
Я попытался создать простой веб-сайт для тестирования клиента, и у меня возникли проблемы с десериализацией данных.Это пример того, как я вызываю службу:
using (WebClient client = new WebClient())
{
result = client.DownloadString(url);
}
// Deserialize
BinaryVehicles binVehs;
using (var ms = new MemoryStream(StrToByteArray(result)))
{
binVehs = Serializer.Deserialize<BinaryVehicles>(ms);
}
Пример того, что возвращается в «результате»: ChsKCzEyMy00NTYtNzg5EgU0NDAwMBoFQmxhY2sKHAoLOTYzLTg1Mi03NDESBTIzMDAwGgZTaWx2ZXI=< / base64Binary>
Я также попытался десериализовать данные между тегами , но безрезультатно. Кто-нибудь знает, как мне следует отправлять двоичные данные protobuf-net из метода WebGet и как я должен десериализовать данные?1009 *