gpt4 book ai didi

c# - 如何通过反射创建具有内部构造函数的类的对象实例?

转载 作者:太空狗 更新时间:2023-10-29 22:09:20 25 4
gpt4 key购买 nike

示例:

class Program
{
static void Main(string[] args)
{
var myClass = Activator.CreateInstance(typeof(MyClass));
}
}

public class MyClass
{
internal MyClass()
{
}
}

异常:

System.MissingMethodException

No parameterless constructor defined for this object.

解决方案:

var myClass = Activator.CreateInstance(typeof(MyClass), nonPublic:true);

我不明白,为什么我不能在带有内部构造函数的程序集中创建实例。该构造函数应该在执行程序集中可用。对于这个程序集,它应该像 public 一样工作。

最佳答案

也不是不可能。你必须告诉它不是公众。

var myClass = Activator.CreateInstance(typeof(MyClass), true);//say nonpublic

关于c# - 如何通过反射创建具有内部构造函数的类的对象实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19240971/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com