Share via


Útmutató: A szerelvény teljes nevének megkeresése

Ha egy .NET-keretrendszer-szerelvény teljes nevét szeretné felderíteni a globális szerelvénygyorsítótárban, használja a Globális szerelvénygyorsítótár eszközt (Gacutil.exe). Lásd : A globális szerelvény-gyorsítótár tartalmának megtekintése.

A .NET Core-szerelvények és .NET-keretrendszer olyan szerelvények esetében, amelyek nem szerepelnek a globális szerelvény-gyorsítótárban, a teljes szerelvénynevet többféleképpen is lekérheti:

  • Kód használatával kiadhatja az adatokat a konzolnak vagy egy változónak, vagy a Ildasm.exe (IL Disassembler) segítségével megvizsgálhatja a szerelvény metaadatait, amely tartalmazza a teljes nevet.

  • Ha az alkalmazás már betöltötte a szerelvényt, lekérheti a tulajdonság értékét a Assembly.FullName teljes minősített név lekéréséhez. Az adott szerelvényben definiált Type tulajdonság használatával Assembly lekérheti az Assembly objektumra mutató hivatkozást. A példa egy illusztrációt tartalmaz.

  • Ha ismeri a szerelvény fájlrendszerének elérési útját, meghívhatja a static (C#) vagy Shared a (Visual Basic) AssemblyName.GetAssemblyName metódust a teljes szerelvénynév lekéréséhez. Az alábbiakban egy egyszerű példát mutatunk be.

    using System;
    using System.Reflection;
    
    public class Example
    {
       public static void Main()
       {
          Console.WriteLine(AssemblyName.GetAssemblyName(@".\UtilityLibrary.dll"));
       }
    }
    // The example displays output like the following:
    //   UtilityLibrary, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null
    
    Imports System.Reflection
    
    Public Module Example
       Public Sub Main
          Console.WriteLine(AssemblyName.GetAssemblyName(".\UtilityLibrary.dll"))
       End Sub
    End Module
    ' The example displays output like the following:
    '   UtilityLibrary, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null
    
  • A Ildasm.exe (IL Disassembler) használatával megvizsgálhatja a szerelvény metaadatait, amely tartalmazza a teljes nevet.

Az olyan szerelvényattribútumok beállításáról, mint a verzió, a kultúra és a szerelvény neve, további információt a szerelvényattribútumok beállítása című témakörben talál. A szerelvény erős névvel való megadásáról további információt az erős nevű szerelvények létrehozása és használata című témakörben talál.

Példa

Az alábbi példa bemutatja, hogyan jeleníthető meg egy adott osztályt tartalmazó szerelvény teljes neve a konzolon. A tulajdonság használatával Type.Assembly egy szerelvényre mutató hivatkozást kér le az adott szerelvényben meghatározott típusból.

#using <System.dll>
#using <System.Data.dll>

using namespace System;
using namespace System::Reflection;

ref class asmname
{
public:
    static void Main()
    {
        Type^ t = System::Data::DataSet::typeid;
        String^ s = t->Assembly->FullName->ToString();
        Console::WriteLine("The fully qualified assembly name " +
            "containing the specified class is {0}.", s);
    }
};

int main()
{
    asmname::Main();
}
using System;
using System.Reflection;

class asmname
{
    public static void Main()
    {
        Type t = typeof(System.Data.DataSet);
        string s = t.Assembly.FullName.ToString();
        Console.WriteLine("The fully qualified assembly name " +
            "containing the specified class is {0}.", s);
    }
}
Imports System.Reflection

Class asmname
    Public Shared Sub Main()
        Dim t As Type = GetType(System.Data.DataSet)
        Dim s As String = t.Assembly.FullName.ToString()
        Console.WriteLine("The fully qualified assembly name " +
            "containing the specified class is {0}.", s)
    End Sub
End Class

Lásd még