У меня есть HttpHandler, возвращающий изображение через Response.OutputStream
. У меня есть следующий код:
_imageProvider.GetImage().CopyTo(context.Response.OutputStream);
GetImage()
возвращает a Stream
, который фактически является экземпляром MemoryStream
, и он возвращает 0 байт в браузер. Если я изменяю подписи GetImage()
, чтобы вернуть a MemoryStream
и использовать следующую строку кода:
_imageProvider.GetImage().WriteTo(context.Response.OutputStream);
Это работает, и браузер получает изображение. Итак, какова разница между WriteTo и CopyTo в классе MemoryStream, и каков рекомендуемый способ сделать это, используя класс Stream
в сигнатуре метода GetImage()
.