asp.net-mvc-2 – 在MVC 2中使用自定义TextWriter时,“BinaryWrite异常”Outpu
发布时间:2020-05-24 00:56:39 所属栏目:asp.Net 来源:互联网
导读:我有一个使用响应BinaryWrite方法渲染流的视图.这一切都在ASP.NET 4使用Beta 2工作正常,但在RC版本中抛出此异常: “HttpException” , “OutputStream is not available when a custom TextWriter is used.” %@ Page Title= Language=C# Inherits=Syste
|
我有一个使用响应BinaryWrite方法渲染流的视图.这一切都在ASP.NET 4使用Beta 2工作正常,但在RC版本中抛出此异常:
<%@ 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中. 任何人都有一个想法为什么会发生这种情况? 解决方法当ViewPage开始执行时,它会假定有关请求的其余部分的某些内容.绊倒你的特定事情是,ViewPage假定请求的其余部分将是一个正常的HTML或一些其他文本响应,所以它将自己的作者的响应的TextWriter切换.在您的情况下,您应该创建一个新的ActionResult派生类,其ExecuteResult方法将逻辑封装在Page_Load方法中.您的操作方法应返回您的自定义类的实例,并且调用者将在适当的时候运行ExecuteResult方法.这完全绕过视图引擎,这样可以防止您正在运行的错误,并提供轻微的性能提升. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 基于MVC的API – 如何实现OAuth?
- asp.net-mvc – 使ASP.NET绑定指定media =屏幕的CSS bundle
- ASP.NET MVC3 Razor – 如何有条件地退出或结束或返回或中断
- asp.net – LINQ:不支持查询运算符’ElementAtOrDefault’
- asp.net-mvc – 通过删除空格打破我的calc语句的MVC捆绑?
- asp.net-mvc-2 – EditorFor – 传入字典的模型项目的类型为
- asp.net – 在启用了共享配置的IIS 7上安装Web Deploy
- Asp.Net成员 – 实体框架4中的提供商
- asp.net – 如何在KeyUp上进行文本框回发?
- ASP.NET MVC 4和会话安全漏洞
推荐文章
站长推荐
- ASP.NET core Web中使用appsettings.json配置文件
- asp.net – 引用依赖于ConfigurationManager的.n
- 如何配置asp.net与.net 4.5
- asp.net-mvc-3 – WebAPI PUT / POST中的部分实体
- asp.net – 发布网站时,我的默认文档名称不断从I
- asp.net-web-api – 无法识别Web Api [可查询]属
- asp.net核心 – 如何在asp.net core mvc项目中解
- asp.net – 什么是部分回发?
- ASP.NET MVC中的角色缓存策略
- asp.net-mvc – 关于使用重写的AuthorizeAttribu
热点阅读
