Assemblies e o Cache de Assembly Global (C# e Visual Basic)

Assemblies formam a unidade fundamental de implantação, controle de versão, reutilização, ativação de escopo e permissões de segurança para um aplicativo de base .NET. Assemblies tomam a forma de um arquivo executável (.exe) ou arquivo de biblioteca de links dinâmicos (.dll) e são os blocos de construção do .NET Framework. Eles fornecem o Common Language Runtime com as informações de que precisam para estarem cientes das implementações de tipo. Você pode considerar um assembly como uma cloeção de tipos e recursos que formam uma unidade lógica de funcionalidade e são construídos para trabalharem em conjunto.

Assemblies podem conter um ou mais módulos. Por exemplo, projetos maiores podem ser planejados de forma que vários desenvolvedores individuais trabalham em módulos separados, todos os próximos juntos para criar um único assembly. Para obter mais informações sobre módulos, consulte o tópico Como: Criar um Assembly multi-arquivos.

Os assemblies têm as seguintes propriedades:

  • Assemblies são implementados como arquivos. exe ou. dll.

  • Você pode compartilhar um assembly entre aplicativos, colocando-os no cache global de assemblies. Assemblies devem ser fortes antes que elas podem ser incluídas no cache global de assemblies. Para obter mais informações, consulte Assemblies de nomes fortes.

  • Módulos (assemblies) só é carregados na memória, se forem necessários. Se não forem usados, eles não são carregados. Isso significa que os assemblies podem ser uma maneira eficiente de gerenciar recursos em projetos maiores.

  • Programaticamente, você pode obter informações sobre um assembly usando reflexão. Para obter mais informações, consulte reflexão.

  • Se você deseja carregar um assembly somente para inspecioná-la, use um método como ReflectionOnlyLoadFrom.

Manifesto do Assembly

Dentro de todo assembly está um manifesto assembly. Igual a uma tabela de conteúdo, o manifesto assembly contém o seguinte:

  • A identidade do assembly (seu nome e versão).

  • Um arquivo descrevendo todos os outros arquivos que constituem o assembly, como por exemplo, quaisquer outros assemblies que você criou com que seus arquivos .exe ou .dll contam, ou até mesmo arquivos bitmap ou Leia-me.

  • Uma lista de referência de assemblies, que é uma lista de todas as dependências externas, dlls ou outros arquivos de que seu aplicativo necessita podem ter sido criados por outra pessoa. Referências de assembly contêm referências para tanto objetos globais quanto privados. Objetos globais residem no cache global de assembly, uma área disponível para outros aplicativos, um tanto semelhante ao diretório System32. O namespace Microsoft.VisualBasic é um exemplo de um assembly no cache global de assembly. Objetos privados devem estar num diretório num nível igual ou abaixo do diretório no qual seu aplicativo está instalado.

Porque módulos (assemblies) contêm informações sobre o conteúdo, controle de versões e dependências, os aplicativos criados com Visual Basic e C# não confiam nos valores de registro para funcionar corretamente. Reduzem os conflitos. dll e tornam seus aplicativos mais confiáveis e fáceis de implantar assemblies. Em muitos casos, você pode instalar um aplicativo com base .NET simplesmente copiando seus arquivos para o computador de destino.

Para obter mais informações, consulte: Manifesto do Assembly.

Adicionando uma referência a um Assembly

Para usar um assembly, você precisa adicionar-lhe uma referência, como descrito em Como: Adicionar ou remover referências no Visual Studio. Em seguida, use o declaração Imports em Visual Basic ou usando a diretiva em C# para escolher o namespace dos itens que você deseja usar. Uma vez que o assembly é referenciado e importado, todas as classes, propriedades, métodos e outros membros possíveis de seus namespaces estão disponíveis para o seu aplicativo como se seus códigos fossem parte de arquivo-fonte.

No C#, você também pode usar duas versões do mesmo assembly em um único aplicativo. Para obter mais informações, consulte alias externo.

Criando um Assembly

Compilar seu aplicativo, clicando em Build na Build menu ou com a criação de linha de comando usando o compilador de linha de comando. Para obter detalhes sobre a criação de módulos (assemblies) na linha de comando, consulte Compilando a partir da linha de comando (Visual Basic) para Visual Basic e Comando -<>>linha criando com CSC. exe para C#.

Consulte também

Tarefas

Como: Compartilhar um Assembly com outros aplicativos (C# e Visual Basic)

Como: Carregamento e descarregamento de Assemblies (C# e Visual Basic)

Como: Determinar se um arquivo é um Assembly (C# e Visual Basic)

Como: Criar e usar Assemblies usando a linha de comando (C# e Visual Basic)

Demonstra Passo a passo: Tipos de incorporação de Assemblies gerenciados (C# e Visual Basic)

Demonstra Passo a passo: A incorporação de informações de tipo de Assemblies de Microsoft Office (C# e Visual Basic)

Conceitos

Guia de Programação C#

Assemblies no Common Language Runtime

Friend Assemblies (C# e Visual Basic)

Outros recursos

Guia de programação Visual Basic