我正在用C#编写WCF服务.最初我的实现有一个静态构造函数来进行一次性初始化,但是正在进行的一些初始化可能(暂时)失败.
看起来静态构造函数只调用一次,即使第一次(失败)尝试引发了异常?任何后续尝试实例化我的类都将立即失败,并且TypeInitializationException没有实际执行的代码.
C#语言规范声明静态构造函数最多被调用一次,但基本上这会产生一个异常,即使你抓住它也无法从中恢复?
我在这里错过了什么吗?我想我应该向服务的实例构造函数移动任何远程危险的东西,并手动检查类初始化是否已经成功完成了之前?