Member 11859517 Ответов: 2

Как передать строку json методу client. postasync () в C#?


строка json = JsonConvert. SerializeObject(dict)

здесь в json я получаю строку Джейсона,

теперь я хочу передать эту строку json в http postAsync(url, myjsonString)

как это сделать при использовании C#??
без использования асинхронности и ожидания. bez мой проект ориентирован на .net framework 4.

спасибо
сушил

Что я уже пробовал:

строку JSON = JsonConvert.SerializeObject(покажите, форматирование.Изрезанный);

var httpContent = new StringContent(json);

var httpResponce = помощник.Клиент.PostAsync(путь, httpContent);

2 Ответов

Рейтинг:
4

Member 11859517

строку JSON = JsonConvert.SerializeObject(покажите, форматирование.Изрезанный);

буфер ВАР = система.Текст.Кодирование.Кодировке utf8.Метод getbytes(в формате JSON);

var byteContent = new ByteArrayContent(буфер);

байтконтент.Заголовки.ContentType = new MediaTypeHeaderValue ("application/json");

var httpResponce = помощник.Клиент.PostAsync (path, byteContent).Результат;

он работает нормально....:)


Afzaal Ahmad Zeeshan

Вы должны выбрать мой пост в качестве ответа, а не добавлять новый пост в качестве решения с тем же содержанием и предложением.

Рейтинг:
2

Afzaal Ahmad Zeeshan

Проблема, с которой вы можете столкнуться, будет заключаться в результате, а не в передаче содержимого JSON. Если вы не хотите использовать операторы async/await, то и в этом нет необходимости. Вы можете написать следующий код для выполнения HTTP-сообщения синхронно (но ожидая завершения потока).

string json = JsonConvert.SerializeObject(dicti, Formatting.Indented);
var httpContent = new StringContent(json);

// PostAsync returns a Task<httpresponsemessage>
var httpResponce = Helper.Client.PostAsync(path, httpContent).Result;
</httpresponsemessage>

Обратите внимание, что если вы не рассматриваете возможность использования async/await, вам придется работать с Task[^] основанная модель программирования. В этом случае вам придется подождать, пока результат не будет зафиксирован, а затем продолжить Программирование остального материала. Для защитного программирования рассмотрите возможность проверки состояния задачи, чтобы увидеть, успешно ли она выполнена. Для получения дополнительной информации прочтите раздел "Примечания".


Member 11859517

спасибо afzaal :)