C#でWCFサービスを作成しています。当初、私の実装には1回限りの初期化を行う静的コンストラクターがありましたが、実行中の初期化の一部が(一時的に)失敗する可能性があります。
最初の(失敗した)試行で例外がスローされた場合でも、静的コンストラクターは1回だけ呼び出されるようです。その後、クラスをインスタンス化しようとするとTypeInitializationException
、コードが実際に実行されずにすぐに失敗します。
C#言語仕様では、静的コンストラクターは最大で1回呼び出されると規定されていますが、基本的にこれは例外となり、たとえキャッチしても回復できないエラーが発生しますか?
ここで何かが足りませんか?リモートで危険なものをサービスのインスタンスコンストラクターに移動し、クラスの初期化が以前に正常に完了したかどうかを手動で確認する必要があると思いますか?