単一層アプリケーションは、次の方法で例外を区別できます。
Exception ex;
if (ex is System.DirectoryServices.AccountManagement.PasswordException)
...
ex は単なる一般的な例外です。
多層の WCF に移行すると、これらすべてが失われ、FaultException メカニズムを使用する必要があります。
問題は、上記を行う方法が見つからないことです。
私のクライアントでは、FaultException タイプをキャッチし、それらを区別したいと考えています。つまり、次のようなものです。
catch (FaultException ex)
{
if FaultException is (PasswordExceptionFault)
...
etc
}
これを行う方法はありますか?
それ以外の場合は、FaultException の種類ごとに 1 つずつ、多くの catch コンストラクトが必要です。