我需要通过 HTTP Post 向第三方发送 SOAP(带附件)消息。需要自定义 SOAP Header 的内容并将附加数据作为附件发送。SOAP Header(具体是其中的子元素)和附件都需要签名并包含在 SOAP Header 中。没有可用的 WSDL,因此无法生成代理代码。
目前我能想到的唯一方法是从头开始有效地手动构建消息,即将 SOAP 标头的内容构建为一系列类(在 XSD.exe 的帮助下),添加签名,将其序列化为XML,将其插入到手动构建的 MIME 消息中,然后最后对附件执行类似的操作。虽然这将使我能够完全控制消息的内容,但感觉就像是一种非常冗长的方式来做一些 .NET 可能免费提供给我的事情。
所以我想我的问题是,有没有更好的方法来做到这一点?谁能给我一些关于从哪里开始的指示?我一直在研究 WCF,但我不相信它支持附件或自定义 SOAP 标头 - 这是正确的吗?