Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用Biztalk公开REST服务_C#_Biztalk - Fatal编程技术网

C# 使用Biztalk公开REST服务

C# 使用Biztalk公开REST服务,c#,biztalk,C#,Biztalk,我正在尝试构建能够公开REST服务并接受JSON消息而不是SOAP XML的Biztalk应用程序 我所做的是:我创建了两个方案和编排,并将这些方案发布为WCF服务。然后,我还创建了自定义管道来将json解码为xml。 然而,这似乎只适用于内容类型为application/soap+xml的xml请求;字符集=utf-8标题 如果将内容类型更改为content-type:application/json,则会失败 无法处理消息,因为内容类型为“application/json” 不是预期的类型“

我正在尝试构建能够公开REST服务并接受JSON消息而不是SOAP XML的Biztalk应用程序

我所做的是:我创建了两个方案和编排,并将这些方案发布为WCF服务。然后,我还创建了自定义管道来将json解码为xml。 然而,这似乎只适用于内容类型为application/soap+xml的xml请求;字符集=utf-8标题

如果将内容类型更改为content-type:application/json,则会失败

无法处理消息,因为内容类型为“application/json” 不是预期的类型“application/soap+xml”;字符集=utf-8'

我一直在网上寻找解决办法。现在我不确定这是否能实现,有人知道吗


非常感谢您的建议。

WCF WSHttp适配器仅适用于SOAP消息。如果您想要JSON,最好使用WCF WebHTTP。在BT 2013中,您仍然需要自定义管道组件来将JSON转换为XML。BT 2013R2本机支持JSON。

您使用的是哪种适配器以及BizTalk的哪个版本?@OlegDeribas BizTalk 2013和WCF WSHttp adapterAFAIK WCF WSHttp adapter仅适用于SOAP消息。如果您想要JSON,最好使用WCF WebHTTP。在BT 2013中,您仍然需要自定义管道组件来将JSON转换为XML。BT 2013R2本机支持JSON。@OlegDeribas谢谢你的提示,它成功了。请把你的答案贴出来,这样我就可以做标记了。