AssemblyInfo.cs ne için kullanılır?


116

Sorum oldukça basit. Bilmek istediğim şey, AssemblyInfo.cs dosyasının ne için kullanıldığıdır?


Ancak bu sürüm numarasının ad, genel anahtar belirteci ve kültür bilgileriyle birlikte yalnızca derlemelerin güçlü adlandırılmış imzalı olması durumunda kullanıldığını unutmayın. Derlemeler kesin olarak adlandırılmamışsa, yükleme için yalnızca dosya adları kullanılır.
Karl SoCal

Yanıtlar:


85

AssemblyInfo.cs ad, açıklama, sürüm vb. Gibi derlemeniz hakkında bilgiler içerir. İçerdiği yorumları okuyarak içeriği hakkında daha fazla ayrıntı bulabilirsiniz.

Silerseniz, derlemeniz bilgi olmadan derlenecektir, yani dosya özelliklerinin Ayrıntılar sekmesinde ad, açıklama, sürüm 0.0.0.0 vb. Görmeyeceksiniz.

Derlemeyle ilişkili değer: Kılavuz, bir COM nesnesi olarak gösterilecekse derlemeyi tanımlayacak kimliktir. Yani, montajınız COM'a maruz kalmamışsa, buna ihtiyacınız yoktur. Rastgele oluşturulur. Her durumda, normalde onu değiştirmenize gerek yoktur.

Krediler şu adrese gider: http://social.msdn.microsoft.com/Forums/en/csharpgeneral/thread/8955449f-71ac-448e-9ee6-5329fceecd3c


1
Dolayısıyla, AssemblyInfo dosyamdaki sürüm numarasını hiçbir zaman değiştirmezsem, kaç dağıtım gerçekleştirirsem yapayım, her zaman 1.0.0.0 olarak görünecektir?
Sachin Kainth

3
Her sürümün güncellemesini otomatikleştirmek istersem ne olur? Mümkün mü?
Sachin Kainth

Proje ayarlarında başarılı bir şekilde derlendikten sonra, bu numarayı güncellemek için biraz .exe çağırabilirsiniz (bu nedenle, yeni oluşturulan değil, bir sonraki sürümün sürüm numarası olacaktır). Bir göz atın: codeproject.com/Makaleler/31236/…
Francois

Değiştirmeye gerek olmadığından emin misiniz? Sürüm numarasını kullanmadan dağıtımlarınızı nasıl kontrol ediyorsunuz?
Uğur Aldanmaz

Nasıl / Ne Zaman Oluşturulur? Kimliği rastgele bir rehberle değiştirebilir miyim?
Shahryar Saljoughi

15

AssemblyInfo dosyasında Bilgilendirici Nitelikler ürün Adı, açıklaması, Ticari markası, telif hakkı ile ilgili bilgileri içerir. Genel olarak bu bilgiler ya sabit koddur ya da veritabanında ya da düz dosyada depolanır. . Böylece çalışma zamanında kişi bu bilgiyi okuyabilir.

Montaj Bilgileri Bölümü

1 AssemblyTitle: Derlemedeki başlık adı.

2 Montaj Açıklaması: Montajdan detaylı açıklama sağlar.

3 AssemblyCompany: Montajdan firma bilgilerini verir.

4 Montaj Ürünü: Montajdan üretim bilgilerini verir.

5 Montaj Telif Hakkı: Montajdan telif hakkı sağlar.

6 AssemblyTrademark: Montajdan markayı temin eder.

Bu özniteliklerin her biri, AssemblyInfo dosyasından bilgileri okumak için kullanılan tanımlı bir sınıfa sahiptir.

Şu bağlantıya bakın: - http://www.dotnetspider.com/forum/157292-assemblyinfo-file.aspx


10

Proje Özelliklerinize, Uygulama sekmesine gidin ve Montaj Bilgileri düğmesine tıklayın.

AssemblyInfo.cs dosyasında depolanan budur.

Windows Gezgini'nde, projenizin .exe çıktısına sağ tıklayın, Özellikler'i seçin ve Ayrıntılar sekmesine gidin. AssemblyInfo.cs tarafından üretilen bilgiler budur.


8

AssemblyInfo dosyasında, projedeki her yerden alabileceğiniz bilgileri saklayabilirsiniz, böylece tüm yerleri güncellemeniz gerekmez, sadece assemblyInfo.

Örneğin - bu dosyada sürüm numarasını güncellersiniz ve sitenizde otomatik olarak güncellenir. Html sayfasında sürüm numarasını almak için şunu yazın:

Assembly assembly = Assembly.GetAssembly(typeof(ProjectName.WebSite.Controllers.MyController));
string version = assembly.GetName().Version.ToString();

ve her yeni sürüm yüklediğinizde güncellenecektir.


4

Sürüm, şirket adı vb. Gibi montaj seviyesi nitelikleri için uygun bir konumdur.


0

AssemblyInfo.cs oluşturmakta olduğunuz uygulama hakkında genel bilgiler içerir, bu bilgilerden bazıları uygulamanızın başlığını, telif hakkını vb. İçerir, örneğin uygulamanızın başlığı "Uygulamam" ise şuna benzer bir şey görmelisiniz: [assembly: AssemblyTitle ( "MyApplication")]


4
Stack Overflow'a hoş geldiniz. Katıldığınızı görmek güzel ancak lütfen konuya yeni bir şey getirmeyen yanıtlar eklemekten kaçının.
machnic
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.