[英]MTOM is not working in WCF
我有一个简单的自托管WCF Web服务和客户端,我试图让他们使用MTOM发送和接收文件,尤其是图像。 我检查了Microsoft示例,基本上,他们所做的只是设置配置文件以将MTOM用作MessageEncoding
进行绑定。 我也这样做了,并遵循了大量的教程和文章,如果我检查了
(selfHost.Description.Endpoints[0].Binding as WSHttpBinding).MessageEncoding
属性在运行时,它是我期望的MTOM。 但是,当我通过实现和IClientMEssageInspector
检查客户端的已发送和已接收消息时,我看到它们是作为普通文本肥皂消息发送的。 我可以在<Image>
节点内的消息中看到巨大的base64字符串。 发送相同文件后检查Microsoft MTOM示例客户端的消息时,没有base64字符串,并且请求的正文仅显示
<s:Body>... secuencia ...</s:Body>
(我想用英语会说“序列”)。
我不知道该怎么做才能使其正常工作。 我尝试了不同的文件大小,从几KB到近2MB。 我尝试通过代码而不是配置文件来设置MEssageEncoding
,但仍然没有运气。
您对为什么它不起作用有任何想法吗? 让我知道您是否需要有关此问题的更多信息。
提前致谢。
当您创建
<binding name="mybindingname" messageEncoding="MTOM" ...>,
是否将绑定名称添加到服务中,如下所示?
<service>
<endPoint bindingConfiguration="mybindingname" ... />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.