Подробная информация о версии сборки

мы найдем версию сборки из Assembly.cs в каждой библиотеке.

[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

У меня вопрос: что это 1.0.0.0?

Спасибо


person Muhammad Akhtar    schedule 02.08.2010    source источник
comment
возможный дубликат Как вы редактируете свои проекты?   -  person Igor Zevaka    schedule 02.08.2010


Ответы (4)


Как указано в самом файле:

// 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.0")]

Изменив это следующим образом:

// 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.0")]

Вы получите автоматическую настройку двух последних разделов (Build Number и Revision). И этот автоинкремент работает следующим образом:

  • Build Number: Дней с 1.1.2000
  • Revision: Секунды с полуночи делятся на два

И последнее, но не менее важное: если вы используете Subversion для SourceControl, вы можете создать файл шаблона (копию того же файла с другим именем), в котором вы замените его в желаемом месте примерно так:

[assembly: AssemblyVersion("1.0.$WCREV$.0")]

И в вашем заранее созданном событии вашего проекта вы вводите что-то вроде этого:

SubWCRev "$(ProjectDir)\" "$(ProjectDir)Properties\AssemblyInfo.template.cs" "$(ProjectDir)Properties\AssemblyInfo.cs"

Чтобы добавить текущий номер версии Subversion в информацию о версии вашего приложения.

person Oliver    schedule 02.08.2010
comment
Небольшая поправка: Редакция = Секунды с полуночи, разделенные на два. Причина в том, что в день 86400 секунд, а версии ограничены 16-битными целыми числами, вы получаете максимум 65535 секунд в день. - person Dave; 22.04.2011

Из AssemblyInfo.cs четыре числа означают:

// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version 
//      Build Number
//      Revision
person John Warlow    schedule 02.08.2010

основная версия. второстепенная версия. номер сборки. пересмотр

person Jeeva Subburaj    schedule 02.08.2010

Номер версии состоит из четырех сегментов; Major, Minor, Build и Revision.

Первые два сегмента - Major и Minor - это номер версии, который обычно видит пользователь, основные изменения относятся к очень большим изменениям, а второстепенные увеличиваются для каждого нового выпуска для пользователя.

Вторые два сегмента Build и Revision - это расширение номера версии, которое действительно предназначено для ИТ-специалистов. По умолчанию это количество дней после случайной назначенной даты начала и пересмотр, основанный на количестве секунд, прошедших с полуночи.

На самом деле мы используем версию даты для значения сборки и выпусков в течение одного дня для ревизии (хотя мы, вероятно, переместим это в наш номер ревизии svn).

person Iain Hoult    schedule 02.08.2010