Metodo Solution2.AddFromTemplate (String, String, String, Boolean)

Copia un file di progetto esistente e tutti gli elementi o sottodirectory che contiene, nella posizione specificata e aggiunto alla soluzione.

Spazio dei nomi:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Sintassi

'Dichiarazione
Function AddFromTemplate ( _
    FileName As String, _
    Destination As String, _
    ProjectName As String, _
    Exclusive As Boolean _
) As Project
Project AddFromTemplate(
    string FileName,
    string Destination,
    string ProjectName,
    bool Exclusive
)
Project^ AddFromTemplate(
    [InAttribute] String^ FileName, 
    [InAttribute] String^ Destination, 
    [InAttribute] String^ ProjectName, 
    [InAttribute] bool Exclusive
)
abstract AddFromTemplate : 
        FileName:string * 
        Destination:string * 
        ProjectName:string * 
        Exclusive:bool -> Project 
function AddFromTemplate(
    FileName : String, 
    Destination : String, 
    ProjectName : String, 
    Exclusive : boolean
) : Project

Parametri

  • FileName
    Tipo: System.String
    obbligatorio.Il percorso completo e il nome file con estensione di file di progetto di modello.
  • Destination
    Tipo: System.String
    obbligatorio.Il percorso completo della directory in cui copiare il contenuto FileName.
  • ProjectName
    Tipo: System.String
    obbligatorio.Il nome del file di progetto nella directory di destinazione.Questa deve includere l'estensione.Il nome viene visualizzato in deriva da ProjectName.
  • Exclusive
    Tipo: System.Boolean
    facoltativo.Indica se il progetto verrà caricato nella soluzione corrente o nella propria; true se la soluzione corrente viene chiusa e il progetto viene aggiunto a una nuova soluzione, false se il progetto viene aggiunto a un oggetto esistente, aprire la soluzione.

Valore restituito

Tipo: EnvDTE.Project
In Project oggetto.

Note

Il nome del progetto vengono visualizzati in Esplora soluzioni viene ProjectName senza estensione.AddFromTemplate ha esito negativo se il nuovo nome del file di progetto è già presente nella destinazione.

[!NOTA]

per Visual Basic e Visual C# progetti: restituito Project l'oggetto dispone di un valore di Nothing o nullriferimento null (Nothing in Visual Basic).È possibile trovare creato Project oggetto scorrendo DTE.Solution.Projects raccolta tramite ProjectName parametro per identificare il progetto appena creato.

Esempi

Per informazioni su come eseguire il codice del componente aggiuntivo, vedere Procedura: compilare ed eseguire gli esempi di codice del modello a oggetti di automazione.

Nell'esempio seguente viene creata una soluzione e aggiunge un progetto di applicazione console su.

Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    SolutionExample(_applicationObject)
End Sub

Sub SolutionExample(ByVal dte As DTE2)
    ' This function creates a solution and adds a Visual Basic Console
    ' project to it.
    Try
        Dim soln As Solution2 = CType(DTE.Solution, Solution2)
        Dim vbTemplatePath As String
        ' This path must exist on your computer.
        ' Replace <file path> below with an actual path.
        Dim vbPrjPath As String = "<file path>"
        MsgBox("starting")
        ' Get the project template path for a Visual Basic console project.
        vbTemplatePath = soln.GetProjectTemplate _
        ("ConsoleApplication.zip", "VisualBasic")
        ' Create a new C# Console project using 
        ' the template obtained above.
        soln.AddFromTemplate(vbTemplatePath, vbPrjPath, _
        "New Visual Basic Console Project", False)
        MsgBox("done")
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
public void OnConnection(object application,
 Extensibility.ext_ConnectMode connectMode, object addInInst,
 ref System.Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    SolutionExample((DTE2)_applicationObject);
}

public void SolutionExample(DTE2 dte)
{
    // This function creates a solution and adds a Visual C# Console
    // project to it.
    try{
        Solution2 soln = (Solution2)_applicationObject.Solution;
        String csTemplatePath;
        // The file path must exist on your computer.
        // Replace <file path> below with an actual path.
        String csPrjPath = "<file path>";
    "<file path>MessageBox.Show("Starting...");
"<file path>"<file path>csTemplatePath = 
soln.GetProjectTemplate("ConsoleApplication.zip", "CSharp");
        // Create a new C# Console project using the template obtained 
        // above.
        soln.AddFromTemplate(csTemplatePath, csPrjPath,
 "New CSharp Console Project", false);
        MessageBox.Show("Done!");
    }
    catch(SystemException ex)
    {
        MessageBox.Show("ERROR: " + ex);
    }
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

Solution2 Interfaccia

Overload AddFromTemplate

Spazio dei nomi EnvDTE80