Recupero di informazioni da un assembly

Nello spazio dei nomi System.Reflection sono disponibili numerosi metodi per il recupero di informazioni da un assembly. In questa sezione viene illustrato uno di tali metodi. Per ulteriori informazioni, vedere Cenni preliminari sulla classe Reflection.

L'esempio seguente consente di ottenere informazioni relative al tipo e al membro da un assembly.

Imports System
Imports System.Reflection

Class Asminfo1
   
   'Entry point, which delegates to C-style main Private Function.
   Public Overloads Shared Sub Main()
      Main(System.Environment.GetCommandLineArgs())
   End Sub
   
   Overloads Public Shared Sub Main(args() As String)
      Console.WriteLine(ControlChars.Cr + "Reflection.MemberInfo")
      
      'Get the Type and MemberInfo. 
      'Insert the fully qualified class name inside the quotation marks in the following statement.
      Dim MyType As Type = Type.GetType("System.IO.BinaryReader")
      Dim Mymemberinfoarray As MemberInfo() = MyType.GetMembers((BindingFlags.Public Or BindingFlags.NonPublic Or BindingFlags.Static Or BindingFlags.Instance Or BindingFlags.DeclaredOnly))
      
      'Get and display the DeclaringType method. 
      Console.Write(ControlChars.Cr + "There are {0} documentable members in ", Mymemberinfoarray.Length)
      Console.Write("{0}.", MyType.FullName)
      
      Dim Mymemberinfo As MemberInfo
      For Each Mymemberinfo In  Mymemberinfoarray
         Console.Write((ControlChars.Cr + Mymemberinfo.Name))
      Next Mymemberinfo
   End Sub 'Main
End Class 'Asminfo1
[C#]
using System;
using System.Reflection;
class Asminfo1
{ 
  public static void Main(string[] args)
   { 
   Console.WriteLine ("\nReflection.MemberInfo");

      //Get the Type and MemberInfo. 
      //Insert the fully qualified class name inside the quotation marks in the following statement.
      Type MyType =Type.GetType("System.IO.BinaryReader"); 
      MemberInfo[] Mymemberinfoarray = MyType.GetMembers(BindingFlags.Public|BindingFlags.NonPublic|BindingFlags.Static|BindingFlags.Instance|BindingFlags.DeclaredOnly); 

      //Get and display the DeclaringType method. 
      Console.Write("\nThere are {0} documentable members in ", Mymemberinfoarray.Length);
      Console.Write("{0}.", MyType.FullName); 

      foreach (MemberInfo Mymemberinfo in Mymemberinfoarray) 
          { 
           Console.Write("\n" + Mymemberinfo.Name);
          }
   }
}

Vedere anche

Hosting di Common Language Runtime | Programmazione con i domini applicazione | Cenni preliminari sulla classe Reflection | Utilizzo dei domini applicazione