Condividi tramite


Proprietà dei file

Aggiornamento: novembre 2007

Le proprietà dei file consentono di definire le operazioni da eseguire sui file stessi dal sistema del progetto. È possibile, ad esempio, impostare le proprietà dei file per indicare se un file deve essere compilato o incorporato come risorsa nell'output di generazione.

È possibile selezionare qualsiasi file in Esplora soluzioni ed esaminarne le proprietà nella finestra Proprietà. Per i file di Visual Basic e Visual C# sono disponibili quattro proprietà: FileName, BuildAction, CustomTool e CustomToolNamespace.

Nota:

Le proprietà BuildAction, CustomTool e CustomToolNamespace vengono fornite per scenari avanzati. I valori predefiniti sono in genere sufficienti e non richiedono alcuna modifica.

Proprietà Filename

Per rinominare un file, è possibile fare clic sulla proprietà FileName nella finestra Proprietà e digitare il nuovo nome. Se si modifica il nome del file, in Visual Studio qualsiasi file VB o RESX associato a esso verrà automaticamente rinominato.

Proprietà BuildAction

La proprietà BuildAction indica l'operazione che viene eseguita in Visual Studio in un file durante la generazione. Alla proprietà BuildAction possono essere assegnati diversi valori:

  • None: il file non è incluso nel gruppo di output del progetto e non viene compilato nel processo di generazione. Un file di questo tipo può essere un file di testo contenente informazioni varie, ad esempio un file Readme.

  • Compile: il file viene compilato nell'output di generazione; impostazione utilizzata per i file di codice.

  • Content: il file non viene compilato, ma è incluso nel gruppo di output denominato Contenuto. L'impostazione rappresenta ad esempio il valore predefinito per un file HTM o altro tipo di file Web.

  • Embedded Resource - Il file viene incorporato nell'output di generazione del progetto principale come file DLL o file eseguibile; impostazione normalmente utilizzata per il file di risorse.

Il valore predefinito di BuildAction dipende dall'estensione del file aggiunto alla soluzione. Ad esempio, se si aggiunge un progetto Visual Basic a Esplora soluzioni, il valore predefinito per BuildAction sarà Compile. Perché l'estensione .vb indica un file di codice che può essere compilato. I nomi e le estensioni dei file vengono visualizzati in Esplora soluzioni.

Il nome del file nel progetto non rappresenta l'identificatore della risorsa gestita nel manifesto assembly; per ulteriori informazioni, vedere Manifesto assembly. L'identificatore sarà namespace.filename.extension, dove namespace è il valore della proprietà DefaultNamespace in un progetto Visual C# o della proprietà RootNamespace in un progetto Visual Basic. Filename e extension rimangono invariati rispetto alla designazione originale. Se il file ha estensione RESX, il sistema di progetto eseguirà resgen.exe sul file, creando un file RESOURCE. Il file .resource sarà incorporato nell'assembly. Di conseguenza, il manifesto dell'assembly farà riferimento al file .resources e non al file .resx.

Se si aggiunge ad esempio il file File.bmp a un progetto il cui spazio dei nomi predefinito è Prog e si imposta l'operazione di generazione su Embedded Resource, Prog.File.bmp rappresenterà l'identificatore nel manifesto assembly. Se si aggiunge il file File.resx al progetto, l'operazione di generazione predefinita sarà Embedded Resource e Prog.File.resources rappresenterà l'identificatore nel manifesto assembly.

Notare che quando nell'editor risorse viene aggiunta un'immagine, la proprietà BuildAction viene impostata su None, poiché il file RESX fa riferimento al file di immagine. Durante la generazione, l'immagine verrà inserita nel file RESOURCES creato dal file RESX. Sarà quindi possibile accedere agevolmente all'immagine tramite la classe fortemente tipizzata generata automaticamente per il file RESX. Non è pertanto consigliabile modificare questa impostazione in Embedded Resource, poiché l'immagine verrebbe inclusa due volte nell'assembly.

Per ulteriori informazioni sull'accesso ai file di risorse (compilati da file RESX) in fase di esecuzione, vedere Classe ResourceManager. Per ulteriori informazioni sull'accesso ad altre risorse e a file e incorporati in fase di esecuzione, vedere Metodo Assembly.GetManifestResourceStream.

Proprietà CopyToOutputDirectory

Questa proprietà consente di specificare le condizioni in cui il file di origine selezionato verrà copiato nella directory di output. Selezionare Non copiare se il file non viene mai copiato nella directory di output. Selezionare Copia sempre se il file viene sempre copiato nella directory di output. Selezionare Copia se più recente se il file deve essere copiato solo quando è più recente del file esistente con lo stesso nome nella directory di output.

Nota:

Nei progetti Smart Device, viene determinato quale file DLL o EXE sia più recente confrontando le due versioni Win32 nel modo seguente:

Se la versione sul dispositivo è precedente a quella del desktop, il file viene copiato.

Se la versione sul dispositivo è successiva a quella del desktop, il file non viene copiato.

Se le due versioni sono uguali, viene eseguito un confronto dei checksum. Se i checksum sono uguali, il file non viene copiato. Se i checksum sono diversi, il file viene copiato.

Per i file non DLL o EXE, il file più recente viene determinato esclusivamente in base al checksum.

Nota:

I file di dati verranno copiati in una sottocartella denominata File di dati nella directory di output.

Proprietà CustomTool

Gli strumenti personalizzati sono componenti utilizzabili per convertire file da un tipo a un altro in fase di progettazione. Può trattarsi ad esempio di un generatore di codice DataSet, che legge un file di schema XML XSD e genera delle classi in un file di codice che espone, a livello di programmazione, le relative tabelle e colonne. Esiste un elenco predefinito di strumenti personalizzati disponibili nel prodotto; questa proprietà consente di determinare quale strumento personalizzato è applicato a un file. In rari casi, potrebbe essere necessario modificare il valore di questa proprietà, che deve essere vuoto oppure corrispondere a uno degli strumenti personalizzati incorporati.

Per impostare o modificare lo strumento personalizzato, fare clic sulla proprietà CustomTool nella finestra Proprietà e digitare il nome di uno strumento personalizzato.

Proprietà CustomToolNamespace

Se al progetto è assegnato uno strumento personalizzato, la proprietà CustomToolNamespace consente di specificare lo spazio dei nomi da assegnare al codice generato dallo strumento personalizzato. Quando si specifica un valore per la proprietà CustomToolNamespace, il codice generato dallo strumento viene collocato nello spazio dei nomi specificato. Se la proprietà è vuota, il codice generato viene collocato nello spazio dei nomi predefinito per la cartella nella quale si trova il file convertito. Per Visual Basic, si tratta dello spazio dei nomi principale del progetto, mentre in Visual C# corrisponde all'impostazione della proprietà DefaultNamespace della cartella.

Vedere anche

Concetti

Modelli di progetto predefiniti di Visual Studio

Tipi ed estensioni di file in Visual Basic e in Visual C#

Riferimenti

Proprietà Stringa di connessione, finestra di dialogo Proprietà file (dispositivi)

Altre risorse

Proprietà del progetto (Visual Studio)