JsonContent
JsonContent.Create из класса
со свойством Name = "abcde"
даёт "{"Name":"abcde"}".
Пространство имён -
System.Net.Http.Json.
MediaType равен
"application/json".
Синтаксис
HttpContent content = JsonContent.Create(new Item { Name = "abcde" });
Пример
Давайте прочитать JSON-тело:
using System;
using System.Net.Http;
using System.Net.Http.Json;
using System.Threading.Tasks;
class Item
{
public string Name { get; set; }
}
class Program
{
static async Task Main()
{
HttpContent content = JsonContent.Create(
new Item { Name = "abcde" });
string res = await content.ReadAsStringAsync();
Console.WriteLine(res);
}
}
Результат выполнения кода:
{"Name":"abcde"}
Пример
Давайте прочитать тип содержимого:
using System;
using System.Net.Http;
using System.Net.Http.Json;
class Item
{
public string Name { get; set; }
}
class Program
{
static void Main()
{
HttpContent content = JsonContent.Create(
new Item { Name = "abcde" });
string res = content.Headers.ContentType.MediaType;
Console.WriteLine(res);
}
}
Результат выполнения кода:
"application/json"
Пример
Давайте узнать длину тела в байтах:
using System;
using System.Net.Http;
using System.Net.Http.Json;
using System.Threading.Tasks;
class Item
{
public string Name { get; set; }
}
class Program
{
static async Task Main()
{
HttpContent content = JsonContent.Create(
new Item { Name = "abcde" });
byte[] data = await content.ReadAsByteArrayAsync();
int res = data.Length;
Console.WriteLine(res);
}
}
Результат выполнения кода:
16
Смотрите также
-
StringContent,
JSON строкой -
Headers,
заголовки тела -
ReadAsStringAsync,
чтение текста -
HttpContent,
базовый класс