Nasıl yapılır: Derlemenin tam adını bulma
Genel derleme önbelleğinde bir .NET Framework derlemesinin tam adını bulmak için Genel Derleme Önbelleği aracını (Gacutil.exe) kullanın. Bkz . Nasıl yapılır: Genel derleme önbelleğinin içeriğini görüntüleme.
.NET Core derlemeleri ve genel derleme önbelleğinde olmayan .NET Framework derlemeleri için, tam derleme adını çeşitli yollarla alabilirsiniz:
Bilgileri konsola veya bir değişkene çıkarmak için kod kullanabilir veya tam adı içeren derlemenin meta verilerini incelemek için Ildasm.exe (IL Disassembler) kullanabilirsiniz.
Derleme uygulama tarafından zaten yüklüyse, tam adı almak için özelliğinin değerini Assembly.FullName alabilirsiniz. Nesneye Assembly başvuru Assembly almak için bu derlemede tanımlanan bir özelliğini Type kullanabilirsiniz. Örnek, bir gösterim sağlar.
Derlemenin dosya sistemi yolunu biliyorsanız, tam derleme adını almak için (C#) veya
Shared
(Visual Basic) AssemblyName.GetAssemblyName yöntemini çağırabilirsinizstatic
. Aşağıda basit bir örnek verilmiştir.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
Tam adı içeren derlemenin meta verilerini incelemek için Ildasm.exe (IL Disassembler) kullanabilirsiniz.
Sürüm, kültür ve derleme adı gibi derleme özniteliklerini ayarlama hakkında daha fazla bilgi için bkz . Derleme özniteliklerini ayarlama. Derlemeye tanımlayıcı bir ad verme hakkında daha fazla bilgi için bkz . Tanımlayıcı adlandırılmış derlemeler oluşturma ve kullanma.
Örnek
Aşağıdaki örnekte, konsolda belirtilen sınıfı içeren bir derlemenin tam adının nasıl görüntüleneceği gösterilmektedir. bu derlemede Type.Assembly tanımlanan bir türden bir derlemeye başvuru almak için özelliğini kullanır.
#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