Dela via


Anvisningar: Hitta en sammansättnings fullständigt kvalificerade namn

Om du vill identifiera det fullständigt kvalificerade namnet på en .NET Framework-sammansättning i den globala sammansättningscachen använder du verktyget Global Assembly Cache (Gacutil.exe). Se Så här: Visa innehållet i den globala sammansättningscacheminnet.

För .NET Core-sammansättningar och för .NET Framework-sammansättningar som inte finns i den globala sammansättningscachen kan du hämta det fullständigt kvalificerade sammansättningsnamnet på flera olika sätt:

  • Du kan använda kod för att mata ut informationen till konsolen eller till en variabel, eller så kan du använda Ildasm.exe (IL Disassembler) för att undersöka sammansättningens metadata, som innehåller det fullständigt kvalificerade namnet.

  • Om sammansättningen redan har lästs in av programmet kan du hämta värdet Assembly.FullName för egenskapen för att hämta det fullständigt kvalificerade namnet. Du kan använda egenskapen för Assembly en Type definierad i sammansättningen för att hämta en referens till Assembly objektet. Exemplet innehåller en bild.

  • Om du känner till sammansättningens filsystemsökväg kan du anropa static metoden (C#) eller Shared (Visual Basic) AssemblyName.GetAssemblyName för att hämta det fullständigt kvalificerade sammansättningsnamnet. Följande är ett enkelt exempel.

    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
    
  • Du kan använda Ildasm.exe (IL Disassembler) för att undersöka sammansättningens metadata, som innehåller det fullständigt kvalificerade namnet.

Mer information om hur du ställer in sammansättningsattribut som version, kultur och sammansättningsnamn finns i Ange sammansättningsattribut. Mer information om hur du ger en sammansättning ett starkt namn finns i Skapa och använda starka namngivna sammansättningar.

Exempel

I följande exempel visas hur du visar det fullständigt kvalificerade namnet på en sammansättning som innehåller en angiven klass för konsolen. Den använder Type.Assembly egenskapen för att hämta en referens till en sammansättning från en typ som definieras i den sammansättningen.

#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

Se även