c# - 如何运行静态构造函数?

标签 c# .net static-constructor

我想在不创建实例的情况下执行类的静态构造函数(即我想“加载”类)。我该怎么做?

额外的问题:.NET 4 和旧版本之间有什么区别吗?

编辑:

  • 类不是静态的。
  • 我想在创建实例之前运行它,因为它需要一段时间才能运行,而且我想在首次访问时避免这种延迟。
  • 静态构造函数初始化 private static readonly 字段,因此不能在方法中运行。

最佳答案

其他答案非常好,但是如果您需要强制类构造函数在没有引用类型(即反射)的情况下运行,您可以使用 RunClassConstructor :

Type type = ...;
System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor(type.TypeHandle);

关于c# - 如何运行静态构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2654010/

相关文章:

c# - 为什么用我自己的类的实例调用 DynamicMethod 会导致异常?

c# - 控制何时调用静态构造函数

c# - 数据访问层(DAL)中的LINQ查询方法

c# - 将 {0} 变量添加到 Excel 电子表格名称

c# - 无法将参数值从字符串转换为十进制?

.net - 如何在控制台应用程序中的 WPF MediaElement 上播放视频

c# - 通用 :3 - Push into an endpoint URL (pubsub api for gmail)

.net - 使用 wcf Rest 服务在 iis7 上显示错误?

C# 静态垃圾收集器?

c# - 跟踪静态构造函数执行