Этот пакет добавляет поддержку для форматирования форматирования протоколов и согласования контента System.net.http
Буферы протокола-нейтральный, нейтральный Google, нейтральный платформ, расширяемый механизм для сериализации структурированных данных-подумайте о XML, но меньше, быстрее и проще.
Byndyusoft.Net.Http.Formatting.ProtoBuf фактически зависит от Microsoft.Net.Http и расширяет HttpClient с функциями Protocol Buffers , которые вам, вероятно, потребуется поговорить с сервисом RESTFUL, такими как Web API ASP.NET.
Пакет работает в пространстве имен System.Net.Http и добавляет некоторые удобные методы расширения в HttpClient и HttpContent .
Так, например:
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/protobuf"));
var response = await client.GetAsync("http://localhost/api/products/1");
response.EnsureSuccessStatusCode();
var product = await response.Content.ReadAsAsync<ProductInfo>(new[]
{
new ProtoBufMediaTypeFormatter()
});
}
Если вы попытались просто использовать Microsoft.Net.Http , метод ReadAsAsync не был бы для вас доступен, и вы сможете прочитать контент только как необработанные данные, такие как байты или строка, и должны выполнять сериализацию / де-эриализацию.
Вы также получаете методы расширения, чтобы вернуть / отправить обратно в службу в формате ProtoBuf , не делая этого самостоятельно:
// Save the ProductInfo model back to the API service
await client.PutAsProtoBufAsync("http://localhost/api/products/1", product);
await client.PostAsProtoBufAsync("http://localhost/api/products/1", product);
dotnet add package Byndyusoft.Net.Http.Formatting.ProtoBufЧтобы внести свой вклад, вам нужно будет настроить местную среду, см. Предварительные условия. Руководство для вклада и рабочего процесса см. В жизненном цикле разработки упаковки.
Подробный обзор того, как внести свой вклад, можно найти в Руководстве для участия.
Убедитесь, что вы установили все следующие предпосылки на машине разработки:
srctestsmaster филиал проекта