如何返回一个XMLstring作为MVC中的一个行动结果
可能重复:
在ASP.NET MVC中从控制器的操作返回XML的最佳方式是什么?
我能够将JSON和部分视图(html)作为有效的ActionResult返回,但如何返回一个XMLstring?
你可以使用return this.Content(xmlString, "text/xml");
从操作返回一个构build的XMLstring。
对于JSON / XML我写了一个XML / JSON动作filter ,可以很容易地处理,而不需要在你的动作处理器中处理特殊的情况(这就是你所做的)。
另一种方法是使用XDocument:
using System.Xml.Linq; public XDocument ExportXml() { Response.AddHeader("Content-Type", "text/xml"); return XDocument.Parse("<xml>..."); }
如果您使用Linq-to-XML构buildXML, 请查看我的答案 。 它允许你写这样的代码:
public ActionResult MyXmlAction() { var xml = new XDocument( new XElement("root", new XAttribute("version", "2.0"), new XElement("child", "Hello World!"))); return new XmlActionResult(xml); }