AssemblyVersionAttribute Класс

Определение

Указывает версию сборки, которой присваиваются атрибуты.

public ref class AssemblyVersionAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
public sealed class AssemblyVersionAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false)]
public sealed class AssemblyVersionAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class AssemblyVersionAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
type AssemblyVersionAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false)>]
type AssemblyVersionAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type AssemblyVersionAttribute = class
    inherit Attribute
Public NotInheritable Class AssemblyVersionAttribute
Inherits Attribute
Наследование
AssemblyVersionAttribute
Атрибуты

Примеры

В следующем примере атрибут используется AssemblyVersionAttribute для назначения номера версии сборке. Во время компиляции эти сведения о версии хранятся с метаданными сборки. Во время выполнения пример извлекает значение свойства типа, найденного Type.Assembly в сборке, чтобы получить ссылку на выполняемую сборку, и получает сведения о версии сборки из Version свойства AssemblyName объекта, возвращаемого методом Assembly.GetName .

using System;
using System.Reflection;

[assembly:AssemblyVersionAttribute("2.0.1")]

public class Example1
{
   public static void Main()
   {
      Assembly thisAssem = typeof(Example1).Assembly;
      AssemblyName thisAssemName = thisAssem.GetName();
       
      Version ver = thisAssemName.Version;
       
      Console.WriteLine("This is version {0} of {1}.", ver, thisAssemName.Name);    
   }
}
// The example displays the following output:
//        This is version 2.0.1.0 of Example1.
Imports System.Reflection

<Assembly:AssemblyVersionAttribute("2.0.1")>
Module Example1
   Public Sub Main()
       Dim thisAssem As Assembly = GetType(Example1).Assembly
       Dim thisAssemName As AssemblyName = thisAssem.GetName()
       
       Dim ver As Version = thisAssemName.Version
       
       Console.WriteLine("This is version {0} of {1}.", ver, thisAssemName.Name)    
   End Sub
End Module
' The example displays the following output:
'      This is version 2.0.1.0 of Example1.

Комментарии

Атрибут AssemblyVersionAttribute используется для назначения номера версии сборке. Затем этот номер версии сохраняется с метаданными сборки.

Номер версии сборки является частью удостоверения сборки и играет ключевую роль в привязке к сборке и в политике версий. Политика управления версиями по умолчанию для среды выполнения заключается в том, что приложения могут выполняться только с версиями, с которыми они были разработаны и протестированы, если иное не переопределено явной политикой использования версий в файлах конфигурации (в файле конфигурации приложения, файле политики издателя и файле конфигурации администратора компьютера). Дополнительные сведения см. в разделе "Сборки" в .NET .

Примечание

Проверка версий производится только для сборок со строгими именами.

Номер версии состоит из четырех частей:

<major version>.<minor version>.<build number>.<revision>

Важно!

Все компоненты версии должны быть целыми числами, превышающими или равными 0. Метаданные ограничивают основные, вспомогательные компоненты, компоненты сборки и редакции для сборки максимальным значением UInt16.MaxValue – 1. Если компонент превышает это значение, возникает ошибка компиляции.

Можно указать все значения или принять номер сборки по умолчанию, номер редакции или оба с помощью звездочки (*). Например, [assembly:AssemblyVersion("2.3.25.1")] указывает 2 в качестве основной версии, 3 в качестве дополнительной версии, 25 в качестве номера сборки и 1 в качестве номера редакции. Номер версии, например [assembly:AssemblyVersion("1.2.*")] указывает 1 в качестве основной версии, 2 в качестве дополнительной версии и принимает номера сборки и редакции по умолчанию. Номер версии, например [assembly:AssemblyVersion("1.2.15.*")] указывает 1 в качестве основной версии, 2 в качестве дополнительной версии, 15 в качестве номера сборки и принимает номер редакции по умолчанию. Номер сборки по умолчанию увеличивается ежедневно. Номер редакции по умолчанию — это количество секунд с полуночи местного времени (без учета корректировки часового пояса для летнего времени), разделенное на 2.

Примечание

Если указать звездочку для номера сборки, нельзя указать номер редакции.

Основные и дополнительные версии сборки используются в качестве номера версии библиотеки типов при экспорте сборки. Некоторые узлы COM не принимают библиотеки типов с номером версии 0.0. Поэтому, если вы хотите предоставить сборку com-клиентам, задайте версию сборки явным образом равным 1.0 на AssemblyVersionAttribute странице для проектов, созданных за пределами Visual Studio 2005 и без AssemblyVersionAttribute указания. Это можно сделать, даже если версия сборки — 0.0. Все проекты, созданные в Visual Studio 2005, имеют версию сборки по умолчанию 1.0.*.

Чтобы получить имя загруженной сборки, вызовите GetName сборку, чтобы получить AssemblyNameее, а затем получите Version свойство. Чтобы получить имя не загруженной сборки, вызовите GetAssemblyName из клиентского приложения, чтобы проверить версию сборки, которую использует приложение.

Атрибут AssemblyVersionAttribute можно применить только один раз. Некоторые Visual Studio шаблоны проектов уже включают атрибут. В этих проектах добавление атрибута в код вызывает ошибку компилятора.

Конструкторы

AssemblyVersionAttribute(String)

Инициализирует новый экземпляр класса AssemblyVersionAttribute с номером версии сборки, которой присваиваются атрибуты.

Свойства

TypeId

В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute.

(Унаследовано от Attribute)
Version

Возвращает номер версии сборки с соответствующими атрибутами.

Методы

Equals(Object)

Возвращает значение, показывающее, равен ли экземпляр указанному объекту.

(Унаследовано от Attribute)
GetHashCode()

Возвращает хэш-код данного экземпляра.

(Унаследовано от Attribute)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
IsDefaultAttribute()

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.

(Унаследовано от Attribute)
Match(Object)

При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту.

(Унаследовано от Attribute)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Возвращает сведения о типе объекта, которые можно использовать для получения сведений о типе интерфейса.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к открытым свойствам и методам объекта.

(Унаследовано от Attribute)

Применяется к

См. также раздел