I Klassennamen haben, die im String-Format ist, muss ich dynamisch ausführen funktionieren und Guss führen in dynamischwie String generische Art zu werfen
Type type = Type.GetType(method.NameSpace + "." + method.ClassName, false);
//
Type calledType = Type.GetType(namespaceName + "." + className + "," + assemblyName);
//this function return object type of class type which is I've created from string className
var result= calledType.InvokeMember(
methodName,
BindingFlags.InvokeMethod | BindingFlags.Public | BindingFlags.Static,
null,
null,
obj);
oder alternativ dazu
public T CAST<T>(Object o){
//some mechanism
}
CAST<type >(result);
gibt Typ oder Namespacename erwartet .. Wie kann ich dynamisch generierte Klassenart in den generischen Typ konvertieren
Jetzt muss ich var-Ergebnis zu einem Type-Typ (dynamische Klasse) umwandeln . Wie?
* Warum * musst du diese Besetzung machen? Bitte geben Sie uns das größere Bild. –
Und was ist die Zeichenfolge, die Sie werfen möchten? Die Art des Ergebnisses ist "Objekt", nicht "Zeichenfolge". – hvd
Nun, ich habe Methode dynamisch von der neuen hinzugefügten Assembly im System ausführen. So Alle Methoden Liste und die erforderlichen Informationen in der Datenbank gespeichert und von Datenbankfeld muß ich ausführen und aus dieser Funktion führen zu bekommen wie wir schwer in Codedatei codiert haben, ich habe versucht, var result = (Typ) calledType.InvokeMember ( zu tun methoden, BindingFlags.InvokeMethod | BindingFlags.Public | BindingFlags.Static, null, null , obj); aber das gibt Fehler, wie es –