将图像写入ASP .NET中的响应会导致“使用自定义TextWriter时,OutputStream不可用”。

时间:2015-02-02 11:32:52

标签: c# asp.net

我们多年来一直在运行ASP .NET(没有MVC)应用程序而没有任何问题。但是,我们现在已经更改了服务器,现在我们收到以下错误:

  

使用自定义TextWriter时,OutputStream不可用。

     

异常详细信息:System.Web.HttpException:使用自定义TextWriter时,OutputStream不可用。

     

堆栈追踪:

     

[HttpException(0x80004005):使用自定义TextWriter时,OutputStream不可用。]      System.Web.HttpResponse.BinaryWrite(Byte [] buffer)+4840090      App.Loader.Page_Load(Object sender,EventArgs e)+3464

请参阅下面的代码:

public partial class Loader : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {   
        var filePath = @"C:\test\testfile.jpg";

        Response.Clear();
        Response.ContentType = "image/jpeg";
        Response.BinaryWrite(File.ReadAllBytes(filePath));
        Response.End();
    }
}

我注意到一旦访问Response对象的属性OutputStream就会发生错误。 我在网上和网上发现了很多类似的问题,但我担心这些问题总是存在于mvc应用程序的上下文中。

非常感谢你!

1 个答案:

答案 0 :(得分:0)

我现在找到了解决方案。 我正在使用此应用程序运行cms系统umbraco,其新版本使用MVC框架作为底层框架。因此,我认为Response对象在某种程度上不再有效。