我正在实现基于第三方WSDL的WCF服务。我不想同步处理消息,而是将xml转储到数据库中,并让它由另一个部分进程处理。是否正确使用WCF Message类以正确的方式进行此操作?或者我应该让WCF反序列化消息并重新序列化,以便将其放入数据库中?
为了澄清,我不能使用WCF MSMQ绑定,因为第三方已经声明这将是一个soap web服务。我只是想以某种方式将消息排在我的端,所以处理可以通过异步进行。
答案 0 :(得分:1)
你能否使用MSMQ?这是经典的消息排队系统,它得到了WCF的支持。
您可以从该第三方服务接收该消息,然后将其放入MSMQ以供以后处理。
至于消息与反序列化对象:两者都可以正常工作,但我认为拥有一个真正的.NET对象会更容易处理。
更多信息:
答案 1 :(得分:0)
你有没有理由让他们去DB?调查MSMQ作为一种适用的替代方案在这里可能很聪明......这种方式更接近于配置更改,而不是大量的自定义开发。
如果你做需要这样做,我建议为此目的创建一个自定义通道堆栈(客户端和服务器)。然后,是的,您只需序列化和反序列化消息。