根据Accept标头在函数内部设置响应格式,而在REST中不设置ResponseFormat = WebMessageFormat.Json

时间:2009-11-09 04:23:02

标签: c# .net http-headers

我正在使用WCF REST Starter Kit Preview 2中的Plain旧XML模板来构建REST服务,我想在OperationContract中设置ResponseFormat,而不是在外面(不是使用ResponseFormat = WebMessageFormat.Json)因为我想要相应地将其设置为请求中的Accept Header。理想情况下,我希望能够根据Content-Type标题在OperationContract内部设置RequestFormat。

所以,有人能告诉我我该怎么做,或者指出一些例子。

chers,

稍后编辑:所以我不想在UriTemplate中使用“格式化”之类的东西,我只想要一个UriTemplate,没有ResponseFormat(并且在某些时候没有RequestFormat),并且根据AcceptHeader输出ResponseBody < / p>

[WebHelp(Comment = "For Service testing purposes")]
[WebGet(UriTemplate = "Echo")]
[OperationContract]
public ResponseBody Echo()

2 个答案:

答案 0 :(得分:0)

您必须剥离大部分WCF REST代码并自行重建。开箱即用的内容类型协商不受支持。我首先相信入门套件有一个使用其扩展点的示例,您可能需要查看它们。

答案 1 :(得分:0)