Assembly e Global Assembly Cache (Guida per programmatori C#)

Aggiornamento: novembre 2007

L'assembly rappresenta un blocco predefinito fondamentale di qualsiasi applicazione .NET Framework. Quando, ad esempio, si compila una semplice applicazione C#, in Visual Studio viene creato un assembly sotto forma di un singolo file PE (Portable Executable), in particolare un file EXE o DLL.

Gli assembly contengono metadati che includono informazioni sul numero di versione interno, nonché dettagli su tutti i tipi di dati e di oggetto disponibili. Per ulteriori informazioni, vedere Manifesto dell'assembly.

Gli assembly vengono caricati solo se sono richiesti. Se non vengono utilizzati, non vengono caricati. Consentono pertanto di gestire in modo efficiente le risorse nei progetti di grandi dimensioni.

Gli assembly possono contenere uno o più moduli. È ad esempio possibile pianificare i progetti di grandi dimensioni in modo tale che diversi sviluppatori lavorino su moduli distinti che, una volta raggruppati, costituiranno un singolo assembly. Per ulteriori informazioni sui moduli, vedere l'argomento Procedura: creare un assembly su più file.

Cenni preliminari sugli assembly

Di seguito sono riportate le caratteristiche principali degli assembly:

  • Gli assembly vengono implementati come file con estensione EXE o DLL.

  • È possibile condividere un assembly tra applicazioni inserendolo nella Global Assembly Cache.

  • È necessario assegnare a un assembly un nome sicuro prima di includerlo nella Global Assembly Cache. Per ulteriori informazioni, vedere Assembly con nomi sicuri.

  • Gli assembly vengono caricati in memoria solo se sono richiesti.

  • È possibile ottenere informazioni su un assembly a livello di codice tramite reflection. Per ulteriori informazioni, vedere l'argomento Reflection.

  • Se si desidera caricare un assembly solo per esaminarlo, utilizzare un metodo quale ReflectionOnlyLoadFrom.

  • È possibile utilizzare due versioni dello stesso assembly in un'unica applicazione. Per ulteriori informazioni, vedere extern alias.

Sezioni correlate

Ulteriori informazioni:

Specifiche del linguaggio C#

Per ulteriori informazioni, vedere le sezioni riportate di seguito in Specifiche del linguaggio C#:

  • 1.2 Struttura del programma

  • 9.1 Unità di compilazione

Vedere anche

Concetti

Guida per programmatori C#

I metadati e la struttura dei file PE

Riferimenti

Domini applicazione (Guida per programmatori C#)