例子:
class Program
{
static void Main(string[] args)
{
var myClass = Activator.CreateInstance(typeof(MyClass));
}
}
public class MyClass
{
internal MyClass()
{
}
}
例外:
System.MissingMethodException
没有为此对象定义无参数构造函数。
解决方案:
var myClass = Activator.CreateInstance(typeof(MyClass), nonPublic:true);
我不明白,为什么我不能在带有内部构造函数的程序集中创建一个实例。此构造函数应该在执行程序集中可用。对于这个程序集,它应该像 public 一样工作。