У меня есть представление, представляющее поток с использованием метода BinaryWrite ответа. Все это отлично работало под ASP.NET 4 с использованием бета-версии 2, но выбрасывало это исключение в релизе RC:
"HttpException", "OutputStream is not доступно, когда пользовательский TextWriter используемый."
<%@ Page Title="" Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
<%@ Import Namespace="System.IO" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (ViewData["Error"] == null)
{
Response.Buffer = true;
Response.Clear();
Response.ContentType = ViewData["DocType"] as string;
Response.AddHeader("content-disposition", ViewData["Disposition"] as string);
Response.CacheControl = "No-cache";
MemoryStream stream = ViewData["DocAsStream"] as MemoryStream;
Response.BinaryWrite(stream.ToArray());
Response.Flush();
Response.Close();
}
}
</script>
</script>
Вид создается с помощью перенаправления на стороне клиента (jquery заменит вызов местоположения на предыдущей странице с помощью помощника Url.Action, чтобы, конечно, отобразить ссылку). Это все в iframe.
У кого-нибудь есть идея, почему это происходит?