Я пытаюсь использовать System. Net .Http для запросов POST. Я в порядке с телом ответа HTTP, находящимся в памяти, но мне нужно получить MemoryStream для него. Одним из способов сделать это было бы вызвать HttpContent.GetAsByteArrayAsyn c () и обернуть MemoryStream поверх него, но я думаю, что для этого потребуется скопировать содержимое в отдельный байтовый массив (так как он возвращает Task of byte [] ).
Если тело ответа уже находится в каком-то внутреннем буфере в HttpContent, возможно ли создать MemoryStream поверх этого буфера или как-то вернуть MemoryStream из HttpContent и избежать копирования в отдельный байтовый массив?
Существует также HttpContent.GetAsStreamAsyn c (), но он возвращает обычный поток, а не MemoryStream. Несмотря на то, что это, вероятно, уже экземпляр MemoryStream, я полагаю, небезопасно или целесообразно преобразовывать возвращаемый поток в MemoryStream? (поскольку это детали реализации, которые могут измениться.)
Есть ли другой способ сделать это, или у меня нет другого выбора, кроме как сначала скопировать в byte []?
Спасибо.