I want to return a View() from an action, and the resulting response should have a content type of text/xml instead of the default text/html.
I have tried the following, with no success:
Response.ContentType = "text/xml";
return View();
I know that you can specify the content type by returning ContentResult
, but that doesn't render my View.
I'm hoping I don't need to render the view to a string then use return Content()
, so I'm probably overlooking some easy way.
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage"
ContentType="text/xml" %>
You need to render the string. To return text/xml do the following:
return new ContentResult {
ContentType = "text/xml",
Content = UTF8.GetString(yourXmlString),
ContentEncoding = System.Text.Encoding.UTF8
};
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With