ServiceHost が生きているかどうかを確認したい bool isAlive() メソッドを持つ NetNamedPipeBinding があります。
現在、これは次のようになっています。
while (!stopThread)
{
Thread.Sleep(1000);
try{
try
{
pipeproxy.isAlive();
}
catch (CommunicationObjectFaultedException)
{
pipeproxy = pipeFactory.CreateChannel();
}
}
catch (EndpointNotFoundException)
{
//Show notification
stopThread=true;
}
catch{}
}
//Close Application
驚いたことに、ホストがなくても Channel を作成できるので、これが正しいアプローチかどうかはわかりません。
前もって感謝します。