How to set contenttype in razor (CSHTML)?

2019-03-15 08:47发布

问题:

In classic ASP.NET Web Forms view engine, we can set the ContentType in the .aspx page to the desired type.

Is there a direct/recommended equivalent in Razor?

回答1:

You should set a different content type in your action method.

public ActionResult MyAction() {
    Response.ContentType = "something";
    return View();
}


回答2:

That will work I just tested it, you can also add the following line to your cshtml:

Response.ContentType = "application/javascript";

so that it looks something like this:

@{
    ViewBag.Title = "Home Page";
    Response.ContentType = "application/javascript";
}

It just depends on where you prefer to make the change.



回答3:

Use this:

return Content(json, "application/json");