在剃刀mvc 4 rc清空第一行
发布时间:2020-12-15 22:24:52 所属栏目:asp.Net 来源:网络整理
导读:我已经从mvc 3迁移到mvc 4并遇到了以下问题. @using InvoiceDocflow.Controllers@{ Response.ContentType = "text/xml";}?xml version="1.1" encoding="UTF-8" ?dc @foreach (var dcLink in (IEnumerableDcLink)ViewData["SupportedDcs"]) { link rel="@dcLi
|
我已经从mvc 3迁移到mvc 4并遇到了以下问题.
@using InvoiceDocflow.Controllers
@{
Response.ContentType = "text/xml";
}
<?xml version="1.1" encoding="UTF-8" ?>
<dc>
@foreach (var dcLink in (IEnumerable<DcLink>)ViewData["SupportedDcs"])
{
<link rel="@dcLink.RelUri.ToString()" href="@dcLink.DcUri.ToString()" />
}
</dc>
这是我的观点.我的布局只有一行 @RenderBody() 所以在mvc 3<?xml version =“1.1”encoding =“UTF-8”?>出现在第一行,但现在,它出现在第二行,第一行留空. 我可以在第一行渲染它,因为它在mvc 3中吗? 顺便说说. @using InvoiceDocflow.Controllers
@{
Response.ContentType = "text/xml";
}<?xml version="1.1" encoding="UTF-8" ?>
这可行,但这不是我想做的事情. 解决方法
临时修复? ActionFilter并删除空的第一行?显然,如果合适,您还可以对响应进行其他缩小.
public class TranslationFilter : MemoryStream
{
private Stream filter = null;
public TranslationFilter(HttpResponseBase httpResponseBase)
{
filter = httpResponseBase.Filter;
}
public override void Write(byte[] buffer,int offset,int count)
{
var response = UTF8Encoding.UTF8.GetString(buffer);
// remove all newlines
response = response.Replace(System.Environment.NewLine,"");
/* remove just first empty line
if (response.Substring(0,2) == "rn")
{
response = response.Substring(2,response.Length - 2);
} */
filter.Write(UTF8Encoding.UTF8.GetBytes(response),offset,UTF8Encoding.UTF8.GetByteCount(response));
}
}
public class ResponseFilter : ActionFilterAttribute
{
public ResponseFilter()
{
}
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
base.OnResultExecuted(filterContext);
filterContext.HttpContext.Response.Filter = new TranslationFilter(filterContext.HttpContext.Response);
}
}
并将其添加到Controller方法? [ResponseFilter]
public ActionResult Index()
{
return View();
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 哪些ASP.NET生命周期事件可以异步?
- asp.net-mvc3 EditorFor模板名称问题
- asp.net – 仅刷新另一个UpdatePanel中的UpdatePanel
- asp.net – RequiredFieldValidator不适用于Dropdownlist
- go语言-字符串的方法
- ASP.NET开发常用简单实用的方法
- asp.net-mvc – 选择哪种ASP.NET MVC Routing框架?
- asp.net-mvc – webgrid中的Mvc 3 texbox(razor)
- asp.net – 无法为Elmah配置邮件
- asp.net中让Repeater和GridView支持DataPager分页
推荐文章
站长推荐
- MS Chart与ASP.NET图表类型“列”不显示轴x标签,
- asp.net-mvc-3 – 日期选择器透明背景开箱即用?
- asp.net-mvc – ‘Personal’是一种类型,在给定的
- asp.net-mvc – 如何限制对ASP.NET MVC中某些页面
- asp.net-mvc-3 – 隐藏日期的默认值
- asp.net – 单元测试操作过滤器 – 如何模拟View
- 按月分组的ASP.NET组数据
- asp.net-mvc – 如何从ASP.NET MVC应用程序返回4
- asp.net – .NET:如何从Flash创建缩略图
- asp.net – Internet Explorer 9中的URL查询字符
热点阅读
