カスタム ActionResult を使用して、コントローラー アクションから XML を返しています。
public class XmlActionResult : ActionResult
{
/// <summary>
/// This class is a custom ActionResult that outputs the content of an XML document to the response stream
/// </summary>
private readonly XDocument _document;
public Formatting Formatting { get; set; }
public string MimeType { get; set; }
public XmlActionResult(XDocument document)
{
_document = document;
MimeType = "text/xml";
Formatting = Formatting.None;
}
public override void ExecuteResult(ControllerContext context)
{
context.HttpContext.Response.Clear();
context.HttpContext.Response.ContentType = MimeType;
using(var writer = new XmlTextWriter(context.HttpContext.Response.OutputStream, null)
{
Formatting = Formatting
})
_document.WriteTo(writer);
}
}
これにより、XML ツリーがブラウザーに出力されます。XML を変換する XSL ファイルがありますが、スタイルシートを XML 出力に適用するにはどうすればよいですか?