Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Derlemenin adı meta verilerde depolanır ve derlemenin kapsamı ve bir uygulama tarafından kullanımı üzerinde önemli bir etkiye sahiptir. Güçlü adlandırılmış bir derleme, derlemenin adını, kültürünü, ortak anahtarını, sürüm numarasını ve isteğe bağlı olarak işlemci mimarisini içeren tam bir ada sahiptir. Yüklenen derlemeler için, sık sık görünen ad olarak adlandırılan tam nitelikli adı almak üzere FullName özelliğini kullanın.
Çalışma zamanı, derlemeyi bulmak ve aynı ada sahip diğer derlemelerden ayırmak için ad bilgilerini kullanır. Örneğin, myTypes adlı güçlü adlandırılmış derleme aşağıdaki tam nitelikli ada sahip olabilir:
myTypes, Version=1.0.1234.0, Culture=en-US, PublicKeyToken=b77a5c561934e089c, ProcessorArchitecture=msil
Bu örnekte, tam nitelikli isim, derlemenin myTypes ortak anahtar belirtecine sahip güçlü bir isim olduğunu, Amerika Birleşik Devletleri İngilizcesi kültür değerine sahip olduğunu ve 1.0.1234.0 sürüm numarasına sahip olduğunu gösterir. İşlemci mimarisi msil'dır, bu da işletim sistemine ve işlemciye bağlı olarak 32 bit koda veya 64 bit koda tam-zamanında (JIT) derleneceği anlamına gelir.
Tavsiye
Bilgi ProcessorArchitecture , derlemelerin işlemcilere özgü sürümlerine izin verir. Kimliği yalnızca işlemci mimarisine göre farklılık gösteren bir derlemenin sürümlerini oluşturabilirsiniz, örneğin 32 bit ve 64 bit işlemciye özgü sürümler. Tanımlayıcı adlar için işlemci mimarisi gerekli değildir. Daha fazla bilgi için bkz. AssemblyName.ProcessorArchitecture.
Bir derlemedeki türleri talep eden kodun tam nitelikli derleme adını kullanması gerekir. Buna tam nitelikli bağlama adı verilir. .NET Framework'te derlemelere başvururken yalnızca derleme adını belirten kısmi bağlamaya izin verilmez.
.NET Framework'ünü oluşturan derlemelere yönelik tüm derleme başvuruları, derlemenin tam adını da içermelidir. Örneğin, 1.0 sürümü için System.Data .NET Framework derlemesine yapılan bir başvuru şunları içerebilir:
System.data, version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Sürüm, .NET Framework sürüm 1.0 ile birlikte gelen tüm .NET Framework derlemelerinin sürüm numarasına karşılık gelir. .NET Framework derlemeleri için kültür değeri her zaman nötrdür ve ortak anahtar yukarıdaki örnekte gösterildiği gibi aynıdır.
Örneğin, bir izleme dinleyicisi ayarlamak üzere yapılandırma dosyasına derleme başvurusu eklemek için sistem .NET Framework derlemesinin tam adını eklersiniz:
<add name="myListener" type="System.Diagnostics.TextWriterTraceListener, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\myListener.log" />
Uyarı
Çalışma zamanı, derlemeye bağlanırken derleme adlarını büyük/küçük harfe duyarsız olarak ele alır, ancak derleme adında kullanılan her büyük/küçük harf durumunu korur. Windows SDK'daki çeşitli araçlar derleme adlarını büyük/küçük harfe duyarlı olarak işler. En iyi sonuçlar için, derleme adlarını büyük/küçük harfe duyarlıymış gibi yönetin.
Uygulama bileşenlerini adlandırma
Çalışma zamanı, bir derlemenin kimliğini belirlerken dosya adını dikkate almaz. Derleme adı, sürümü, kültürü ve tanımlayıcı adından oluşan derleme kimliğinin çalışma zamanına açık olması gerekir.
Örneğin, myAssembly.dll adlı bir derlemeye başvuran myAssembly.exeadlı bir derlemeniz varsa, myAssembly.exeyürütürseniz bağlama doğru şekilde gerçekleşir. Ancak, başka bir uygulama myAssembly.exe'ı AppDomain.ExecuteAssembly yöntemiyle yürütürse, çalışma zamanı, myAssembly ile bağlanma istediğinde myAssembly zaten yüklü olduğunu belirler. Bu durumda ,myAssembly.dll hiçbir zaman yüklenmez.
myAssembly.exe istenen türü içermediğinden bir TypeLoadException oluşur.
Bu sorunu önlemek için, uygulamanızı oluşturan derlemelerin aynı derleme adına sahip olmadığından emin olun veya farklı dizinlerde aynı ada sahip derlemeler yerleştirin.
Uyarı
.NET Framework'te, küresel derleme önbelleğine güçlü adlandırılmış bir derleme koyarsanız, derlemenin dosya adı, dosya adı uzantısı hariç olmak üzere, .exe veya .dll gibi derleme adı ile eşleşmelidir. Örneğin, bir derlemenin dosya adı myAssembly.dllise, derleme adı olmalıdır myAssembly. Yalnızca kök uygulama dizininde dağıtılan özel derlemeler, dosya adından farklı bir derleme adına sahip olabilir.
Ayrıca bakınız
- Nasıl yapılır: Bir bütünleştirmenin tam nitelikli adını belirleme
- Derlemeler oluşturma
- Güçlü adlandırılmış derlemeler
- Genel derleme önbelleği
- çalışma zamanı kütüphaneleri nasıl bulur