Постоянно пишет в FileResult в C#

Я получаю данные в кодировке base64 по частям из сети (API) и хочу, чтобы их можно было загрузить с моего веб-сайта (или показать их, если изображение и т. Д.). Что у меня сейчас:

public FileResult Show(/*...*/)
{
    /* Connecting to the service ... */
    byte[] result = new byte[size];
    /* Here I have a loop that's receiving the data, decoding it and putting it into the byte array */
    return new FileStreamResult(new MemoryStream(result), mime);
}

И сейчас он работает отлично, как я хочу, но я боюсь, что если файл слишком большой, у меня не будет достаточно памяти и он будет медленным, так как он должен сначала загрузить все это, а затем передать. Поэтому мой вопрос заключается в том, как записывать данные в поток по мере получения данных. Если возможно, я бы хотел избежать записи в файловую систему.

0 ответов

Другие вопросы по тегам