我有一个环境,我无法添加另一个HTTP容器(无论是ServiceHost,IIS等),但我仍然需要使用WCF Web服务处理SOAP请求(表示为字符串)。我希望编写一个简单的包装器方法(C#),例如:
string processSoapMessage(string req);
在该方法中,我将使用对输入字符串进行操作的XML阅读器手动创建System.ServiceModel.Channels.Message实例。我希望通过创建一个处理生成的Message实例的ChannelDispatcher来避免编写手动调度代码,但似乎ChannelDispatcher与特定的ServiceHost绑定,如果它需要一个开放端口,我在环境中就不能拥有它。是否有一些我可以调用的调度代码来完成此操作而不创建托管容器?
答案 0 :(得分:1)
假设一切都发生在同一台机器上,那么使用Named Pipe绑定可能是你最好的选择。
答案 1 :(得分:0)
因此,您无法创建一个简单的控制台应用程序来创建和打开ServiceHost来托管您的服务类?
马克
答案 2 :(得分:-1)
无论您做什么,都不要使用System.String
类型来保存XML。通过XmlReader
或XmlDocument
或其他内容。始终使用XML API来操作XML。