设置ViewResult的内容类型

时间:2009-12-16 17:38:26

标签: asp.net-mvc http-headers content-type

我正在尝试创建一个ActionResult,其行为方式与ViewResult完全相同,但允许我指定Content-Type标头。这很困难,因为从我可以告诉ASP.Net MVC切换到webforms渲染引擎,然后使用页面上的标题设置内容类型,这种方法对我来说不可行,如果我更容易可以在一个中心位置改变这一点。

我尝试了以下实现,但它不起作用。 WebForms引擎重置类型。如果之后设置,也会发生同样的情况。或者,如果您尝试使用Headers.Add

欺骗它
public class MyViewResult : ViewResult
{
    public override void ExecuteResult(ControllerContext context)
    {
        context.HttpContext.Response.ContentType = "myContent";
        base.ExecuteResult(context);
    }
}

1 个答案:

答案 0 :(得分:0)

尝试在ExecuteResult方法中交换两行的顺序。