0

我真的对 WCF 中的一种情况感到困惑。

我在 WCF 服务“SERVICE1”上有两个操作“OP1”和“OP2”。

有两个客户端使用服务“CLIENT1”和“CLIENT2”。

条件是“CLIENT1”只能调用“OP1”,而“CLIENT2”只能调用“OP2”。

4

1 回答 1

1

重构您的服务契约以公开两个端点,其接口仅与使用它的客户端相关:

   [ServiceContract]
    public interface IService1
    {
        [OperationContract]
        void OperationOne();
    }

    [ServiceContract]
    public interface IService2
    {
        [OperationContract]
        void OperationTwo();
    }

    public class MyServcie: IService1, IService2
    {
        //Implementation here...
    }

这样,客户IService1甚至都不知道方法IService2存在。

这不仅限于 WCF - 这也是 OOP 中的好习惯......

于 2013-08-28T11:48:33.890 回答