2つのサービスホストでホストされている2つのコントラクトがあり、最初のコントラクトにシングルトンオブジェクトが必要なので、他のサービスホストがそのクラスからオブジェクトを作成しようとすると、最初のサービスホストから同じオブジェクトを取得するだけです。
これは、新しいサービスホストを作成する代わりに、サービスホストにアクセスしてそこからオブジェクトを取得するために離れて見つける必要があることを意味する場合があります。
前もって感謝します
2つのサービスホストでホストされている2つのコントラクトがあり、最初のコントラクトにシングルトンオブジェクトが必要なので、他のサービスホストがそのクラスからオブジェクトを作成しようとすると、最初のサービスホストから同じオブジェクトを取得するだけです。
これは、新しいサービスホストを作成する代わりに、サービスホストにアクセスしてそこからオブジェクトを取得するために離れて見つける必要があることを意味する場合があります。
前もって感謝します
したがって、サービスクラスのインスタンスを自分で作成してから、このインスタンスを両方のサービスホストに渡すことができると思います。ただし、これについては詳しくテストしていません。
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
public class Calc: ICalc
{
}
var calc = new Calc();
var h1 = new ServiceHost(calc, baseAddress1);
var h2 = new ServiceHost(calc, baseAddress2);