Condividi tramite


Parametri di template

Utilizzando i parametri nei modelli, è possibile sostituire i valori delle parti principali del modello, ad esempio i nomi delle classi e gli spazi dei nomi, quando viene creata un'istanza del modello.Questi parametri vengono sostituiti dalla Creazione guidata modelli che viene eseguita in background quando si fa clic su OK nella finestra di dialogo Nuovo progetto o Aggiungi nuovo elemento.

Dichiarazione e attivazione dei parametri di un modello

I parametri del modello vengono dichiarati nel formato $parametro$.Ad esempio:

  • $safeprojectname$

  • $guid1$

  • $guid5$

Per attivare la sostituzione dei parametri nei modelli

  1. Nel file .vstemplate del modello, individuare l'elemento di ProjectItem che corrisponde all'elemento per il quale si desidera attivare la sostituzione dei parametri.

  2. Impostare l'attributo ReplaceParameters dell'elemento ProjectItem su true.

  3. Nel file di codice dell'elemento del progetto, includere i parametri, se appropriato.Il parametro seguente, ad esempio, specifica che in un file verrà utilizzato safe project name per lo spazio dei nomi:

    namespace $safeprojectname$
    

Parametri di modello riservati

Nella tabella riportata di seguito sono elencati i parametri di modello riservati che possono essere utilizzati con qualsiasi modello.

[!NOTA]

Nei parametri di modello viene fatta distinzione tra maiuscole e minuscole.

Parametro

Descrizione

clrversion

Versione corrente di Common Language Runtime (CLR).

GUID [1-10]

Un GUID utilizzato per sostituire il GUID del progetto in un file di progetto.È possibile specificare fino a 10 GUID univoci, ad esempio guid1).

itemname

Il nome fornito dall'utente nella finestra di dialogo Aggiungi nuovo elemento.

machinename

Il nome del computer corrente, ad esempio Computer01.

projectname

Il nome fornito dall'utente nella finestra di dialogo Nuovo progetto.

registeredorganization

Il valore della chiave di registro estratta da HKLM\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization.

rootnamespace

Lo spazio dei nomi radice del progetto corrente.Questo parametro è applicabile solo ai modelli di elemento.

safeitemname

Il nome fornito dall'utente nella finestra di dialogo Aggiungi nuovo elemento, dal quale sono stati rimossi i caratteri non sicuri e gli spazi.

safeprojectname

Il nome fornito dall'utente nella finestra di dialogo Nuovo progetto, dal quale sono stati rimossi i caratteri non sicuri e gli spazi.

time

La data e l'ora correnti nel formato GG/MM/AAAA 00:00:00.

SpecifiedSolutionName

Il nome della soluzione.

userdomain

L'attuale dominio utente.

username

Il nome dell'utente corrente.

webnamespace

Nome del sito Web corrente.Questo parametro viene utilizzato nel modello Web Form per garantire nomi della classe univoci.Se il sito Web si trova nella directory radice del server Web, questo parametro del modello viene risolto nella directory radice del server Web.

year

L'anno corrente nel formato AAAA.

Parametri di modello personalizzati

È possibile specificare i parametri e valori personalizzati, oltre ai parametri di modello riservati predefiniti utilizzati durante la sostituzione dei parametri. Per ulteriori informazioni, vedere Elemento CustomParameters (modelli di Visual Studio)

Esempio: sostituzione dei nomi di file

È possibile specificare nomi di file variabili per elementi del progetto mediante un parametro con l'attributo TargetFileName.È possibile specificare, ad esempio, che il file .exe utilizzi come nome del file il nome del progetto specificato da $projectname$.

<TemplateContent>
    <ProjectItem
        ReplaceParameters="true"
        TargetFileName="$projectname$.exe">
            File1.exe
    </ProjectItem>
      ...
</TemplateContent>

Esempio: utilizzo del nome del progetto per il nome dello spazio dei nomi

Per utilizzare il nome del progetto per il nome dello spazio dei nomi in un file di classe Visual C#, Class1.cs, utilizzare la seguente sintassi:

#region Using directives

using System;
using System.Collections.Generic;
using System.Text;

#endregion

namespace $safeprojectname$
{
    public class Class1
        {
            public Class1()
                {

                }
         }
}

Nel file .vstemplate del modello di progetto, includere il seguente codice XML quando si fa riferimento al file Class1.cs:

<TemplateContent>
    <ProjectItem ReplaceParameters="true">
        Class1.cs
    </ProjectItem>
    ...
</TemplateContent>

Vedere anche

Altre risorse

Personalizzazione di modelli di progetto e modelli di elementi