Existe-t-il un moyen dans c # de parcourir les propriétés d’une classe? Fondamentalement, j’ai une classe qui contient un grand nombre de propriétés (elle contient essentiellement les résultats d’une requête de firebase database volumineuse). J’ai besoin de sortir ces résultats sous la forme d’un fichier CSV. Vous devez donc append chaque valeur à une chaîne. […]
Disons que nous avons ces deux classes: public class Derived : Base { public Derived(ssortingng s) : base(s) { } } public class Base { protected Base(ssortingng s) { } } Comment puis-je savoir dans le constructeur de Base que Derived est l’invocateur? C’est ce que j’ai imaginé: public class Derived : Base { public […]
J’ai récemment dû vérifier cette monstruosité dans le code de production pour manipuler des champs privés dans une classe WPF: (tl; dr comment puis-je éviter de le faire?) private static class MemoryPressurePatcher { private static Timer gcResetTimer; private static Stopwatch collectionTimer; private static Stopwatch allocationTimer; private static object lockObject; public static void Patch() { Type […]
Dans Scala, quel est le meilleur moyen d’instancier dynamicment un object et d’invoquer une méthode utilisant la reflection? Je voudrais faire l’équivalent Scala du code Java suivant: Class class = Class.forName(“Foo”); Object foo = class.newInstance(); Method method = class.getMethod(“hello”, null); method.invoke(foo, null); Dans le code ci-dessus, le nom de la classe et le nom de […]
Je remarque que dans l’API Java Reflection, il existe deux méthodes différentes pour appeler des constructeurs: la méthode getDeclaredConstructors / getConstructors . Bien que les documents Java soient légèrement différents ( getDeclaredConstructors semble impliquer qu’il renvoie TOUS les constructeurs, plutôt que des constructeurs publics), il n’est pas clair pourquoi l’API prend explicitement en charge ces […]
En utilisant la reflection, je tente de trouver l’ensemble des types qui héritent d’une classe de base donnée. Il n’a pas fallu longtemps pour trouver des types simples, mais je suis déconcerté quand il s’agit de génériques. Pour ce morceau de code, le premier IsAssignableFrom renvoie true, mais le second renvoie false. Et pourtant, l’assignation […]
Je veux créer un object proxy dynamic pour append certaines fonctionnalités à un object. En gros, je veux recevoir un object, l’envelopper avec un object qui ressemble à l’original obtenu et intercepter tous les appels. class Wrapper : DynamicProxy// dynamic proxy is not a reall class, but i guess something like this exists… { public […]
Je veux appeler ma méthode générique avec un object de type donné. void Foo(Type t) { MyGenericMethod(); } ne fonctionne évidemment pas. Comment puis-je le faire fonctionner?
Étant donné un object PropertyInfo, comment puis-je vérifier que le setter de la propriété est public?
Disons que j’ai une classe de base TestBase où je définis une méthode virtuelle TestMe () class TestBase { public virtual bool TestMe() { } } Maintenant, j’hérite de cette classe: class Test1 : TestBase { public override bool TestMe() {} } Maintenant, en utilisant Reflection, je dois trouver si la méthode TestMe a été […]