Assembly'nin Version ve File Version bilgileri
AssemblyInfo.cs
içerisinde şöyle bulunur:// Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.1")]
Her assembly için bu tanımlar yapılabilir. Versiyon numarası, framework tarafından asssembly'yi compile ederken veya çalıştırırken bulmak için kullanılır. Versiyon numarası, referans verilmiş assembly'ler için gömülü tutularak kullanılır. Çalışma zamanındada CLR bu versiyon numarası ile assembly'yi arar, bulur ve yükler.
Strong-Name İmzalı Assembly
Versiyon numarası, Public key token, Name, Culture information bilgileri ile strong-named ile imzalanmışsa kullanılır.
Strong-Name İmzası Olmayan Assembly
Sadece dosya adı kullanılarak yüklenir
Versiyon numarasının otomatik(her build ile) arttırlması için rakam yerine * kullanabiliriz. Codeplex'te güzel bir araç bizi bekliyor bu durumlar için.
Kısaca:
FileVersion
Dosyaya sağ tuş ve ayrıntılar tabında görebileceğimiz değerdir.string path = Path.GetDirectoryName((new UriBuilder(Assembly.GetExecutingAssembly().CodeBase)).Path); Assembly assembly = Assembly.LoadFile(path + "\\ClsUpdate.dll"); Version s = assembly.GetName().Version