J'ai * .dll écrit avec C# et j'ai besoin d'obtenir la liste de toutes les méthodes publiques ou les classes contenues dans ce * .dll. Y at-il un moyen de le faire par programmation avec C#?Comment récupérer toutes les méthodes publiques à partir de * .dll
9
A
Répondre
2
Utilisez System.Net.Reflection. Les classes de réflexion vous permettent d'interroger les métadonnées des types d'une DLL lors de l'exécution.
Quelque chose comme this.GetType().Assembly.GetTypes();
12
Oui utiliser Assembly.GetTypes pour extraire tous les types, et ensuite utiliser la réflexion sur chaque type d'itérer les méthodes publiques.
Assembly a = Assembly.LoadWithPartialName("...");
Type[] types = a.GetTypes();
foreach (Type type in types)
{
if (!type.IsPublic)
{
continue;
}
MemberInfo[] members = type.GetMembers(BindingFlags.Public
|BindingFlags.Instance
|BindingFlags.InvokeMethod);
foreach (MemberInfo member in members)
{
Console.WriteLine(type.Name+"."+member.Name);
}
}
4
var assembly = // grab assembly
var types = assembly.GetExportedTypes();
foreach (var type in types) {
var methods = type.GetMethods(BindingFlags.Public);
}
GetExportedTypes retourneront tous les types publics dans l'assemblée. Vous n'avez pas non plus spécifié si vous vouliez uniquement des méthodes d'instance, des méthodes statiques ou les deux.
Questions connexes
- 1. Obtention d'une liste de méthodes publiques à partir d'une DLL
- 2. Obtention de toutes les variables et méthodes publiques dans SWIG
- 3. Appeler les méthodes DLL à partir de Javascript
- 4. Obtenir toutes les méthodes publiques et attribuer getters et les transmettre à liquid_methods
- 5. Comment obtenir les méthodes publiques de dll en utilisant C# quand PublicKeyToken == null
- 6. Découvrez les méthodes publiques d'une bibliothèque partagée
- 7. __équivalent équivalent pour les méthodes publiques
- 8. Accès à la base de données via les méthodes publiques
- 9. JQuery - Widget Méthodes publiques
- 10. apprendre les méthodes publiques d'une classe
- 11. Eclipse: Comment trouver toutes les classes/méthodes (publiques) sans commentaires Javadoc?
- 12. Méthodes publiques dans les classes private-package
- 13. Comment vérifier que toutes les méthodes publiques d'une classe sont virtuelles
- 14. action -Méthodes vs méthodes publiques dans les cadres PHP
- 15. Comment trouver facilement les méthodes/propriétés publiques inutilisées
- 16. Comment définir la règle Style flic pour resharper commenter toutes les méthodes publiques/classes/propriétés etc
- 17. Pour savoir comment obtenir toutes les ips publiques d'une machine
- 18. Accès aux méthodes publiques d'activité
- 19. Récupérer la DLL CLR à partir de SQL Server
- 20. trop de méthodes publiques avec @ModelAttribute
- 21. Comment récupérer toutes les clés d'un dictionnaire?
- 22. accéder à mes méthodes publiques à partir de mon espace de noms
- 23. Comment puis-je obtenir toutes les pages publiques dans DotNetNuke?
- 24. Pourquoi ces méthodes sont-elles publiques?
- 25. But des méthodes publiques NonAction dans MVC
- 26. Comment différencier les méthodes publiques et les méthodes privées lors des tests API?
- 27. Appelez quelques méthodes à partir de l'interface sans surcharger toutes les méthodes dans JAVA
- 28. Vélocité: masquer les méthodes à partir du modèle
- 29. Éviter les méthodes publiques dans une autre classe?
- 30. Appelez les méthodes publiques avec les paramètres jQueryUI Widget
Un mot: réflexion. – BoltClock