C# 静态构造函数和异常

C# 静态构造函数和异常,c#,constructor,C#,Constructor,如果静态构造函数抛出异常而未处理,会发生什么情况 它会一直保持到应用程序域激活吗?异常会传播,如果它没有在某个地方被捕获,例如全局异常处理程序,它会简单地杀死应用程序域。静态构造函数中未处理的异常将被包装在类型初始化异常中。如果您使用的是.NET 2或更新版本,则未经处理的异常将终止该进程 如果在静态构造函数中发生异常,而您没有捕获它,那么您将永远不会使用它的静态方法、字段或属性,甚至无法创建它的实例,否则它将导致TypeInitializationException

如果静态构造函数抛出异常而未处理,会发生什么情况


它会一直保持到应用程序域激活吗?

异常会传播,如果它没有在某个地方被捕获,例如全局异常处理程序,它会简单地杀死应用程序域。

静态构造函数中未处理的异常将被包装在
类型初始化异常中。如果您使用的是.NET 2或更新版本,则未经处理的异常将终止该进程

如果在静态构造函数中发生异常,而您没有捕获它,那么您将永远不会使用它的静态方法、字段或属性,甚至无法创建它的实例,否则它将导致TypeInitializationException