考虑类内部的以下代码Program
:
static EmbeddedClass MyClass;
static Program()
{
AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
}
static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
{
//Load EmbeddedClass here
}
对于这个应用程序,我们需要将程序集EmbeddedClass
嵌入到应用程序中,而不是作为 dll 与它并排。所以也加载我们需要使用的程序集AssemblyResolve
。
但是,上面的代码将不起作用,因为在运行时它会给出:
mscorlib.dll 中出现“System.TypeInitializationException”类型的未处理异常
附加信息:“程序”的类型初始化程序引发了异常。
我相信这是因为它试图EmbeddedClass
在运行静态构造函数之前加载 's 程序集。
有没有办法解决这种情况?