【发布时间】:2010-06-07 18:30:39
【问题描述】:
我有一个看起来像这样的资源:
/users/{id}/summary?format={format}
当format 是“xml”或“json”时,我会返回一个由 WCF 自动编码的用户摘要对象 - 到目前为止还不错。但是当format 等于“pdf”时,我希望我的响应包含一个简单的 HTTP 响应正文和一个 PDF 文件附件。
这是怎么做到的?对WebOperationContext.Current.OutgoingResponse 进行黑客攻击似乎不起作用,即使这样做也不是正确的事情。在 CDATA 部分或响应 isn't safe 中包含文件的位。我应该创建一个Message 的子类,然后提供一个自定义的IDispatchMessageFormatter 来响应它吗?我沿着这条路走了一小段路,但最终发现文档不透明。
什么是正确的?
【问题讨论】: