Erstellen einer Instanz des Typs ohne Standardkonstruktor in C # mit Reflection

Nehmen Sie die folgende Klasse als Beispiel:

class Sometype
{
    int someValue;

    public Sometype(int someValue)
    {
        this.someValue = someValue;
    }
}

Ich möchte dann eine Instanz dieses Typs mit Reflection erstellen:

Type t = typeof(Sometype);
object o = Activator.CreateInstance(t);

Normalerweise funktioniert dies jedoch, weilSomeType hat keinen parameterlosen Konstruktor definiert, der Aufruf vonActivator.CreateInstance löst eine Ausnahme vom Typ @ aMissingMethodException mit der Meldung "Kein parameterloser Konstruktor für dieses Objekt definiert. "Gibt es noch eine alternative Möglichkeit, eine Instanz dieses Typs zu erstellen? Es wäre ziemlich mies, allen meinen Klassen parameterlose Konstruktoren hinzuzufügen.

Antworten auf die Frage(8)

Ihre Antwort auf die Frage