1

一个人这样解释,但不太清楚如何实现它。

根据经验:

使用不同的绑定,例如一个 BasicHttpBinding 用于 Java 客户端,而 WsHttpBinding 用于 .NET 客户端。还有一些是HTTPS,另一些是HTTP......

划分和暴露不同的合约/接口。例如,您有一个公开许多操作的接口,并且您有一个简化的接口来执行基本操作,然后您将第二个接口发布到外部,因此内部客户端使用端点作为扩展接口,而外部客户端使用另一个接口。

例如

interface IFoo
{
   void DoBasic();  
}

interface IFooInternal : IFoo
{
   void DoMore();  
}

Now you have One class implementing both:

public class Foo : IFooInternal 
{
    ....
}

现在,当实现在同一个类中时,您只向外部公开一个。

我不明白如何以这样一种方式设计我的服务合同,即我将向其他客户端公开的操作很少,而我将向内部客户端公开的扩展功能。所以如果可能的话,让我明白给我一个小程序和代码,它是如何通过 WCF 服务中的多个端点实现的。谢谢

4

0 回答 0