让WCF根据请求类型返回JSon或XML

时间:2011-11-14 10:21:51

标签: xml wcf json web-services

我们正在构建一个WCF服务,它将消息字符串作为XML,对XML进行一些处理并返回XML。我们正在研究将JSon结果(和请求)添加为用户选项的想法。我有一个关于如何实现这个问题的问题

由于服务现在返回一个字符串,包含XML格式的消息,我正在考虑向Method:Format添加一个新的参数。如果这是XML,将解析消息解析为XML,做魔术然后返回XML(就像它现在正在做的那样)。如果该格式是JSON,解析JSON,执行Magic并返回JSON ...这将是可插拔的:可解析输入并转换为POCO并传递给处理系统,处理系统将POCO返回给Serilizer(用于想要一个更好的词)并将文本(当前是XML或JSON)返回给用户。

这是正确的做法吗?该服务不是WCF休息服务。我们只有1个方法,我们收到的消息会根据发送的任务而改变。这是正确的方法吗?还有其他的消化吗?

1 个答案:

答案 0 :(得分:0)

WCF有两个扩展点,听起来非常适合这种情况:自定义message inspectorsmessage formatters

顺便提一下,Carlos Figuera有一个非常好的blog,如果你使用这些可扩展点,你可能会觉得很有用。