使用Azure Service Fabric与SOAP服务(.asmx)的集成

3
我正在将现有的服务迁移到Azure Service Fabric。我的现有应用支持遗留用户的SOAP服务(asmx)。我想将同一个Web服务作为我的微服务的一部分使用。该Web服务test.asmx(say)也可以从Rest API中调用(如果有解决方案)。但是我找不到任何方法将SOAP服务作为Azure Service Fabric微服务方法的一部分使用。请帮我找到解决Web服务场景的可能解决方案。谢谢!
1个回答

4

我建议您的ASMX服务转换为使用BasicHttpBinding的WCF服务。然后,您可以在无状态SF服务中托管您的WCF服务,如此处所示

private static ICommunicationListener CreateRestListener(StatelessServiceContext context)
{
   string host = context.NodeContext.IPAddressOrFQDN;
   var endpointConfig = context.CodePackageActivationContext.GetEndpoint("CalculatorEndpoint");
   int port = endpointConfig.Port;
   string scheme = endpointConfig.Protocol.ToString();
   string uri = string.Format(CultureInfo.InvariantCulture, "{0}://{1}:{2}/", scheme, host, port);
   var listener = new WcfCommunicationListener<ICalculatorService>(
                    serviceContext: context,
                    wcfServiceObject: new WcfCalculatorService(),
                    listenerBinding: new BasicHttpBinding(BasicHttpSecurityMode.None),
                    address: new EndpointAddress(uri)
   );
   return listener;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接