AssemblyVersionAttribute Classe

Definição

Especifica a versão do assembly sendo atribuído.

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
Herança
AssemblyVersionAttribute
Atributos

Exemplos

O exemplo a seguir usa o AssemblyVersionAttribute atributo para atribuir um número de versão a um assembly. No tempo de compilação, essas informações de versão são armazenadas com os metadados do assembly. Em tempo de execução, o exemplo recupera o valor da Type.Assembly propriedade em um tipo encontrado no assembly para obter uma referência ao assembly em execução e recupera as informações de versão do assembly da Version propriedade do AssemblyName objeto retornado pelo Assembly.GetName método .

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.

Comentários

O AssemblyVersionAttribute atributo é usado para atribuir um número de versão a um assembly. Esse número de versão é armazenado com os metadados do assembly.

O número de versão do assembly faz parte da identidade de um assembly e desempenha um papel fundamental na associação ao assembly e à política de versão. A política de versão padrão do runtime diz que aplicativos só são executados com as versões com que foram compilados e testados, a menos que essa política de versão seja substituída pela política de versão explícita em arquivos de configuração (o arquivo de configuração do aplicativo, o arquivo de política do editor e o arquivo de configuração do administrador do computador). Consulte Assemblies no .NET para obter mais informações.

Observação

A verificação de versão só ocorre em assemblies com nomes fortes.

O número de versão tem quatro partes, da seguinte maneira:

<versão> principal.<versão> secundária.<número de build>.<Revisão>

Importante

Todos os componentes da versão devem ser inteiros maiores ou iguais a 0. Os metadados restringem os componentes principais, secundários, de build e de revisão de um assembly a um valor máximo de UInt16.MaxValue - 1. Se um componente exceder esse valor, ocorrerá um erro de compilação.

Você pode especificar todos os valores ou aceitar o número de build padrão, o número de revisão ou ambos usando um asterisco (*). Por exemplo, [assembly:AssemblyVersion("2.3.25.1")] indica 2 como a versão principal, 3 como a versão secundária, 25 como o número de build e 1 como o número de revisão. Um número de versão como [assembly:AssemblyVersion("1.2.*")] especifica 1 como a versão principal, 2 como a versão secundária e aceita os números de build e revisão padrão. Um número de versão, como [assembly:AssemblyVersion("1.2.15.*")] especifica 1 como a versão principal, 2 como a versão secundária, 15 como o número de build e aceita o número de revisão padrão. O número de build padrão é incrementado diariamente. O número de revisão padrão é o número de segundos desde a meia-noite no horário local (sem levar em conta os ajustes de fuso horário para o horário de verão), dividido por 2.

Observação

Se você especificar um asterisco para o número de build, não poderá especificar um número de revisão.

As versões principal e secundária do assembly são usadas como o número de versão da biblioteca de tipos quando o assembly é exportado. Alguns hosts COM não aceitam bibliotecas de tipos com o número de versão 0.0. Portanto, se você quiser expor um assembly a clientes COM, defina a versão do assembly explicitamente como 1.0 na AssemblyVersionAttribute página para projetos criados fora do Visual Studio 2005 e sem AssemblyVersionAttribute especificação. Faça isso mesmo quando a versão do assembly for 0.0. Todos os projetos criados no Visual Studio 2005 têm uma versão de assembly padrão da 1.0.*.

Para obter o nome de um assembly que você carregou, chame GetName no assembly para obter um AssemblyNamee, em seguida, obter a Version propriedade . Para obter o nome de um assembly que você não carregou, chame GetAssemblyName do aplicativo cliente para marcar a versão do assembly que seu aplicativo usa.

O AssemblyVersionAttribute atributo só pode ser aplicado uma vez. Alguns modelos de projeto do Visual Studio já incluem o atributo . Nesses projetos, adicionar o atributo no código causa um erro do compilador.

Construtores

AssemblyVersionAttribute(String)

Inicializa uma nova instância da classe AssemblyVersionAttribute com o número de versão do assembly que está sendo atribuído.

Propriedades

TypeId

Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute.

(Herdado de Attribute)
Version

Obtém o número de versão do assembly atribuído.

Métodos

Equals(Object)

Retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
GetHashCode()

Retorna o código hash para a instância.

(Herdado de Attribute)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IsDefaultAttribute()

Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada.

(Herdado de Attribute)
Match(Object)

Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

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

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição.

(Herdado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface.

(Herdado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1).

(Herdado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornece acesso a propriedades e métodos expostos por um objeto.

(Herdado de Attribute)

Aplica-se a

Confira também