Mac(或c ++)与二进制WCF的连接

bug*_*ixr 7 c++ wcf objective-c c#-4.0

我有一个使用TCP/IP托管的WCF服务(netTcpBinding):

var baseWcfAddress = getWcfBaseUri();
host = new ServiceHost(wcfSingleton, baseWcfAddress);

var throttlingBehavior = new System.ServiceModel.Description.ServiceThrottlingBehavior();
throttlingBehavior.MaxConcurrentCalls = Int32.MaxValue;
throttlingBehavior.MaxConcurrentInstances = Int32.MaxValue;
throttlingBehavior.MaxConcurrentSessions = Int32.MaxValue;
host.Description.Behaviors.Add(throttlingBehavior);

host.Open();
Run Code Online (Sandbox Code Playgroud)

我想用Objective C或C++编写一个Mac客户端.是否有任何现有的类可以促进与我的WCF服务的连接?如果没有,我的步骤和选择是什么?

Lad*_*nka 7

从开始的每个绑定net被认为是不可互操作的.即使是没有WCF的纯.NET客户端也无法通过重新实现整个二进制协议和编码而无需大量工作就能与服务进行通信.你可能应该从:

您的Mac选项是使用Mono,它应该支持netTcpBinding.

Mac上Objective-C/C++的真正选择是创建可通过HTTP公开数据的可互操作WCF服务.如果您不是该服务的所有者,则可以创建路由WCF服务,该服务将在可互操作的HTTP和netTCP之间架起桥梁.

编辑:

还有一件事 - 如果服务使用netTcpBinding默认配置,则使用Windows安全性进行保护.我希望它可以成为Mac上的另一个显示器.