Example:
class Program
{
static void Main(string[] args)
{
var myClass = Activator.CreateInstance(typeof(MyClass));
}
}
public class MyClass
{
internal MyClass()
{
}
}
Exception:
System.MissingMethodException
No parameterless constructor defined for this object.
Solution:
var myClass = Activator.CreateInstance(typeof(MyClass), nonPublic:true);
I cannot understand, why I cannot create an instance inside the assembly with internal constructor. This constructor should be available inside the execution assembly. It should work like public for this assembly.
It is not that impossible. you've to tell it is not a public.
var myClass = Activator.CreateInstance(typeof(MyClass), true);//say nonpublic
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With