J'ai une table dans ma base de données que j'utilise pour gérer les relations dans mon application. c'est assez basique dans sa nature - parentType, parentId, childType, childId ... tout comme ints. J'ai fait cette configuration auparavant, mais je l'ai fait avec une configuration switch/case quand j'avais 6 tables différentes que j'essayais de lier. Maintenant j'ai 30 tables que j'essaye de faire ceci avec et j'aimerais pouvoir faire ceci sans devoir écrire 30 entrées de cas dans ma commande de commutateur.Créer dynamiquement un objet de <Type>
Existe-t-il un moyen de faire référence à une classe .Net en utilisant une chaîne? Je sais que ce n'est pas valide (parce que je l'ai essayé plusieurs variantes de ce):
Type t = Type.GetType("WebCore.Models.Page");
object page = new t();
Je sais comment obtenir le type d'un objet, mais comment puis-je utiliser à la volée que pour créer un nouveau objet?
Cela ne fonctionnera pas si l'assembly contenant le type n'est pas déjà chargé dans AppDomain. –
De même, pour appeler cette méthode, l'OP doit avoir accès au type lors de la compilation - la question d'origine a demandé comment créer une instance au moment de l'exécution à partir d'une chaîne. –
Je base simplement ma réponse sur l'exemple fourni dans la question. –