Articles of reflection

Utilisation du mot clé IsAssignableFrom et «is» dans C #

En essayant d’apprendre Unity , je continue à voir le code suivant pour GetControllerInstance dans MVC: if(!typeof(IController).IsAssignableFrom(controllerType)) { … } cela me semble un moyen assez compliqué d’écrire essentiellement if(controllerType is IController) { … } J’apprécie les différences subtiles entre is et IsAssignableFrom , c’est-à-dire IsAssignableFrom n’inclut pas les conversions de cast, mais j’ai du […]

C #: Comment obtenir toutes les propriétés de chaîne publiques (get et set) d’un type

J’essaie de faire une méthode qui parcourra une liste d’objects génériques et remplacera toutes leurs propriétés de type ssortingng qui sont soit null ou vide avec un remplacement. Comment est-ce un bon moyen de faire cela? J’ai ce genre de … shell … jusqu’ici: public static void ReplaceEmptySsortingngs(List list, ssortingng replacement) { var properties = […]

c # instancie la classe de la chaîne

J’ai un cours abstrait et je veux l’initialiser à une classe qui l’étend. J’ai le nom des classes enfants en tant que chaîne. Mis-à-part… Ssortingng childClassSsortingng; MyAbstractClass myObject; if (childClassSsortingng = “myExtenedObjectA”) myObject = new ExtenedObjectA(); if (childClassSsortingng = “myExtenedObjectB”) myObject = new ExtenedObjectB(); Comment puis-je faire ceci? Fondamentalement, comment puis-je me débarrasser des déclarations […]

Comment avoir une méthode Java renvoyant une liste générique de tout type?

Je voudrais écrire une méthode qui retournerait un java.util.List de n’importe quel type sans avoir besoin de convertir quoi que ce soit : List users = magicalListGetter(User.class); List vehicles = magicalListGetter(Vehicle.class); List ssortingngs = magicalListGetter(Ssortingng.class); A quoi ressemblerait la signature de la méthode? Quelque chose comme ça, peut-être (?): public List< ?> magicalListGetter(Class clazz) { […]

C # En utilisant Activator.CreateInstance

J’ai posé une question hier concernant l’utilisation de la reflection ou du modèle de stratégie pour appeler des méthodes dynamics. Cependant, depuis lors, j’ai décidé de changer les méthodes en classes individuelles qui implémentent une interface commune. La raison d’être, chaque classe, tout en portant certaines similitudes, effectue également certaines méthodes uniques à cette classe. […]

Utilisation du numéro de version de l’application Web à partir d’un assembly (ASP.NET/C#)

Comment obtenir le numéro de version de l’application Web appelante dans un assembly référencé? J’ai essayé d’utiliser System.Reflection.Assembly.GetCallingAssembly (). GetName () mais cela me donne juste l’assemblage compilé dynamicment (en renvoyant un numéro de version de 0.0.0.0). MISE À JOUR: Dans mon cas, j’avais besoin d’une solution qui ne nécessitait aucune référence à une classe […]

Comment lire les atsortingbuts d’assemblage

Dans mon programme, comment lire les propriétés définies dans AssemblyInfo.cs: [assembly: AssemblyTitle(“My Product”)] [assembly: AssemblyDescription(“…”)] [assembly: AssemblyConfiguration(“”)] [assembly: AssemblyCompany(“Radeldudel inc.”)] [assembly: AssemblyProduct(“My Product”)] [assembly: AssemblyCopyright(“Copyright @ me 2008”)] [assembly: AssemblyTrademark(“”)] [assembly: AssemblyCulture(“”)] Je voudrais afficher certaines de ces valeurs à l’utilisateur de mon programme, donc j’aimerais savoir comment les charger à partir du programme principal […]

Puis-je obtenir la signature d’un délégué C # par son type?

Existe-t-il un moyen simple d’utiliser la reflection pour accéder à la liste de parameters d’un délégué si vous avez ses informations de type? Par exemple, si je déclare un type de délégué comme suit delegate double FooDelegate (ssortingng param, bool condition); et plus tard obtenir les informations de type pour ce type de délégué comme […]

Récupération du nom de la méthode d’appel depuis une méthode

Duplication possible: Comment trouver la méthode appelée méthode actuelle? J’ai une méthode dans un object qui est appelée à partir de plusieurs endroits dans l’object. Existe-t-il un moyen rapide et simple d’obtenir le nom de la méthode appelée cette méthode populaire? Pseudo Code EXEMPLE: public Main() { PopularMethod(); } public ButtonClick(object sender, EventArgs e) { […]

Java – Récupère une liste de toutes les classes chargées dans la JVM

Je voudrais obtenir une liste de toutes les classes appartenant à un certain paquet ainsi que tous leurs enfants. Les classes peuvent ou non être déjà chargées dans la JVM.