Wie erstelle ich eine Objektinstanz einer Klasse mit einem internen Konstruktor über Reflektion?

Beispiel:

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

public class MyClass
{
    internal MyClass()
    {
    }
}

Ausnahme:

System.MissingMethodException

Für dieses Objekt ist kein parameterloser Konstruktor definiert.

Lösung:

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

Ich kann nicht verstehen, warum ich mit dem internen Konstruktor keine Instanz innerhalb der Assembly erstellen kann. Dieser Konstruktor sollte in der Ausführungsassembly verfügbar sein. Es sollte für diese Versammlung wie öffentlich funktionieren.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage