WCF 消息协定和命名空间
我有一个 WCF 服务,我已经为其定义了消息契约。我已将 IsWrapped 设置为 false。当我将 xml 发送到我的服务时,我必须在肥皂体的根节点中指定 tempuri 命名空间,否则传入消息为空。我想知道是否有任何设置可以使用,这样我就不必在 xml 中传递名称空间?顺便说一句,我正在使用 XmlSerializerFormat。我尝试在 MessageBodyMember 中设置命名空间,但它不起作用。
I have a WCF service which i've defined a message contract for. I've set IsWrapped to false. When I send xml to my service I have to specify the tempuri namespace in the root node of the soap body or the incoming message is null. I was wondering is there any setting I can use so that I don't have to pass in namespace in the xml? I'm using the XmlSerializerFormat by the way. I've tried setting a namespace in the MessageBodyMember but its not working.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看起来您正试图在不知情的情况下使用 POX 消息。如果您想要控制 XML 结构并强制 WCF 服务接受它,那么创建服务来接受 POX 消息可能比使用 SOAP 服务的所有参数来获取预期格式更容易。
本文介绍了 POX 方法:http://msdn。 microsoft.com/en-us/library/aa395208%28VS.90%29.aspx
It looks like you are trying to use POX messages without knowing it. If you want to control the XML structure and force a WCF service to accept it, creating the service to accept POX messages will probably be easier than playing around with all the parameters of a SOAP service to obtain the expected format.
This article explains the POX approach: http://msdn.microsoft.com/en-us/library/aa395208%28VS.90%29.aspx