繁体   English   中英

WCF端点公开服务结构中的多个合同

[英]WCF Endpoints Exposing Multiple Contracts in Service Fabric

我可以根据前几天提交的帖子在WcfCommunicationListener上自定义ServiceHost。 但是,当在无状态服务上托管多个WCF终结点时,Service Fabric现在出现一些非常奇怪的行为。

我将多个侦听器分配给ServiceInstanceListner数组: 在此处输入图片说明

我确保它们每个都有唯一的名称,唯一的合同以及自定义的端点和路径。

部署到ServiceFabric时,它们都会按预期显示在该服务上:

在此处输入图片说明

当我启动WcfTestClient并调用端点之一时,将按预期返回方法:

在此处输入图片说明

但是,一旦我调用另一个服务,奇怪的事情就开始了,我可以看到两个合约都暴露在同一个端点上:

在此处输入图片说明

第二次调用初始端点会产生类似的结果:

在此处输入图片说明

如果我从Visual Studio项目添加服务引用,则会发生相同的问题。 我还将其推送到Azure上的群集中,以确保它不是本地问题。

我已经梳理了数百遍代码,以确保侦听器/服务主机之间不会共享任何合同,终结点或其他实现细节,因此我对如何将它们保持隔离感到困惑。

我有非常相似的代码,这些代码是我从Cloud Services项目迁移而来的,在该平台上工作之前从未见过。 关于如何确保端点隔离的任何想法? 我尝试使用单独的端口无济于事,茫然无措。

我确实在WcfTestClient生成的配置文件中注意到,我在每个服务上都具有两个netTcpBindings,但是我无法分辨这是症状还是原因:

在此处输入图片说明

我试图重现此问题,但它按预期工作。 我已经将样本上传到这里https://github.com/suchiagicha/Samples

然后,您可以告诉我们您是否在做其他不同的事情。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM