短版:我有一个返回 FileResult 的第三方 MVC 扩展。我希望能够在将文件返回给客户端之前对其进行处理。我怎样才能做到这一点?
如果您对无聊的细节感兴趣,请阅读以下内容:
我将 Devexpress XtraReports 用于报告目的。问题是它的 PDF 导出很糟糕,但 RTF 的效果很好。我想创建动作和结果过滤器,它会欺骗 DevExpress 生成 rtf 而不是 pdf(完成),并使用其他第三方库将 rtf 转换为 pdf。唯一的问题是我需要从 FileResult 获取 rtf 文件并返回我自己的 FileResult 以及转换后的内容。
//编辑:现在的代码如下所示:
public virtual ActionResult ReportExport(TParameters parameters)
{
return DevExpress.Web.Mvc.ReportViewerExtension.ExportTo(this.GetReport(parameters));
}