当前位置: 代码迷 >> Web Service >> 请问wcf服务实现多个契约的有关问题
  详细解决方案

请问wcf服务实现多个契约的有关问题

热度:272   发布时间:2016-05-02 02:29:49.0
请教wcf服务实现多个契约的问题。
我的wcf服务实际了多个契约,代码如下:
public class SDHRServices : ISDHRServices, ISys_Dictionary, ISys_Users, IHR_Cars
{
}
ISDHRServices, ISys_Dictionary, ISys_Users, IHR_Cars接口中都有声明ServiceContract与OperationContract,而且Name属性也是一样的。但我发布后,在客户端只有ISDHRServices的方法, ISys_Dictionary, ISys_Users, IHR_Cars中的方法都没有,请问在wcf中可以一个服务实际多个契约吗?如果可以,我要怎么才能让客户端发现所有契约中的方法呢?

------解决方案--------------------
修改下配置文件,把其他几个服务契约也写入到配置文件就可以了
------解决方案--------------------
每个endpoint只能有一个contract, 所以你需要4个endpoints
------解决方案--------------------
一个服务可以多个契约,但每个契约需要发布成一个Endpoint,这样客户端针对每个Endpoint来创建远程代理即可

也就是一个服务对象,对应多个远程代理(每个Contract一个)
  相关解决方案