In den letzten Tagen haben uns einige Benutzer mitgeteilt, dass sie auf einen nicht gefundenen Konstruktor stoßen.
Genehmigt: Fortect
Dies liegt immer daran, dass Sie die Activator.CreateInstance
-Überladung verwenden, die ein leistungsstarkes Array von Gadgets akzeptiert, das fast jede Liste der Konstruktorparameter enthalten sollte. In einem anderen Stil versucht es, wirklich einen Schuhkonstruktor zu finden StateLog
die Idee hat 16 Parameter anstelle von nur bestimmten . Dies wird aus einem Kovarianzstuhl zusammengestellt.
Activator.CreateInstance (Typ von (T), Zeilen)
Da lines
ein []
String ist, denkt es, dass Sie der bestimmten Kovarianz vertrauen möchten, um es bequem in protest []
> umzuwandeln , was bedeutet, dass ein bestimmter Compiler das Gerät wie folgt sieht:
Activator.CreateInstance (Zeilen typeof (T), Method (object []))
Dann suchen Sie nach einem Konstruktor, der lines.Length
Parameter macht, alle Arten von string
.
StateLog-Klasse öffentliches StateLog (Zeichenfolge [] Zeichenfolge) ... Community StateLog (Zeile a, Zeile b, Zeile c) ...
Aufruf von Activator.CreateInstance (typeof (StateLog), newline [] "a", "b", "c")
ruft den Konstruktor auf (mit einem zusätzlich , drei Parametern), verbraucht von der erste.
Was Sie eigentlich suchen, ist die schnelle Übergabe aller
-Strings als erstes Element eines Arrays:
variable Kriterien = neues Objekt [1];Parameter [0] = Zeichenfolgen;Activator.CreateInstance (Parameter (T))
list.Add ((T) Activator.CreateInstance (typeof (T), neueste Objektzeilen []));
Ihr Berechnungsstil
enthält nicht Es kann ein Konstruktor ohne Parameter sein. Sie müssen Konstruktorparameter mit dem PrivateObject
[^] übertragen:
Konstruktor
Der berühmte Kettenausdruck ist "5 * 10-18 / (3 + 19)";PrivateObject obj = neues PrivateObject ( Auswahl (Berechnung), new [], typeof (String) neue [] Reflexion);
Es ist auch schwierig, die Methode sendNumberToCalculation
aufzurufen, die einen bestimmten Parameter vom Typ PolishNotation
bietet, aber die meisten Methoden haben keine Details. Sie müssen das zweite Argument nach dem Aufruf Invoke
entfernen:
double current = Convert.ToDouble (obj.Invoke ("sendNumberToCalculation"));
-
Frage
-
Hallo
Ich verwende Dot-Net-Framework 2.0 …. Ich bin fett und unterstreiche Fehler …
Fehlerwort
Für diesen Teil ist kein parameterloser Konstruktor bekannt. Führen Sie keine C-Nummer oder den Typkonstruktor aus.
Genehmigt: Fortect
Fortect ist das weltweit beliebteste und effektivste PC-Reparaturtool. Millionen von Menschen vertrauen darauf, dass ihre Systeme schnell, reibungslos und fehlerfrei laufen. Mit seiner einfachen Benutzeroberfläche und leistungsstarken Scan-Engine findet und behebt Fortect schnell eine breite Palette von Windows-Problemen - von Systeminstabilität und Sicherheitsproblemen bis hin zu Speicherverwaltung und Leistungsengpässen.
- 1. Laden Sie Fortect herunter und installieren Sie es auf Ihrem Computer
- 2. Starten Sie das Programm und klicken Sie auf "Scannen"
- 3. Klicken Sie auf "Reparieren", um alle gefundenen Probleme zu beheben
Hilfe, unbedingt, ich kämpfe schon lange …. Danke im Voraus …
/// Code umgehen mit ….
Assembly a = Assembly.LoadFrom (Application.StartupPath + ” XYS.exe”);
Geben Sie mytypes = a.GetType (“XYS.Profiler”);
Obj wird als gleich Activator.CreateInstance angesehen (mytypes, new aim [] true);
mytypes.InvokeMember (“CheckForExistingService”, BindingFlags.Default | BindingFlags.InvokeMethod, null, obj, Neuling-Objekt [] sPortNumber);
-
Frage
-
Hallo
Ich verwende Dot Net Framework 2.0 …. Ich bekomme neben der Unterstreichung einen mutigen Fehler …
Fehlermail
Für dieses Objekt ist kein parameterloser Konstruktor definiert. Nicht gefunden in C # oder make re in type.
Bitte helfen Sie den Amerikanern, für lange Zeit zu kämpfen
/// Codekorrektur ….
Assembly a = Assembly.LoadFrom (Application.StartupPath + ” XYS.exe”);
Mytypes ist a.GetType (“XYS.Profiler”);
Object obj ist gleich Activator.CreateInstance (mytypes, new object [] true);
mytypes.InvokeMember (“CheckForExistingService”, BindingFlags.Default | BindingFlags.InvokeMethod, null, obj, einzelnes Ziel [] sPortNumber);
Ich verwende Dot-Net-Framework 2.0 …. Ich bin fett und unterstreiche Probleme … Keine Parameter
Für dieses Element ist kein Konstruktor definiert. in C # oder den Konstruktor, wenn der größte Teil des Typs nicht gefunden wird.
Hilfe bitte, ich kämpfe seit langen Tagen …. Danke im Voraus …
Enter mytypes entspricht a.GetType (“XYS.Profiler”);
Object obj = Activator.CreateInstance (mytypes, neues Modell [] true);
mytypes.InvokeMember (“CheckForExistingService”, BindingFlags.Default | BindingFlags.InvokeMethod, zero, obj, object [] super new sPortNumber);
Beschleunigen Sie jetzt die Leistung Ihres Computers mit diesem einfachen Download.