Compartilhar via


BuildDependency.AddProject(String) Method

Definition

Adds a project to the list of projects that must be built first.

public:
 void AddProject(System::String ^ ProjectUniqueName);
public:
 void AddProject(Platform::String ^ ProjectUniqueName);
void AddProject(std::wstring const & ProjectUniqueName);
[System.Runtime.InteropServices.DispId(5)]
public void AddProject (string ProjectUniqueName);
[<System.Runtime.InteropServices.DispId(5)>]
abstract member AddProject : string -> unit
Public Sub AddProject (ProjectUniqueName As String)

Parameters

ProjectUniqueName
String

Required. The name of the project from the UniqueName property to add as a dependency.

Attributes

Examples

Sub AddProjectExample(ByVal dte As DTE)  
    ' Create a new solution.  
    Dim soln As Solution = dte.Solution  
    Dim solnName As String = "NewSolution.sln"  
    Dim tempPath As String = System.IO.Path.GetTempPath()  
    soln.Create(tempPath, solnName)  

    ' Create two new Visual Basic Console Application projects.  
    Dim templatePath As String = <template path>  
    templatePath &= "ConsoleApplication.vsz"  
    Dim projName As String = "Project1"  
    soln.AddFromTemplate(templatePath, tempPath & projName, projName)  
    Dim proj1 As Project = soln.Item(1)  
    projName = "Project2"  
    soln.AddFromTemplate(templatePath, tempPath & projName, projName)  
    Dim proj2 As Project = soln.Item(2)  

    ' Make Project1 dependent on Project2.  
    Dim bd As BuildDependency = _  
        soln.SolutionBuild.BuildDependencies.Item(proj1.UniqueName)  
    bd.AddProject(proj2.UniqueName)  

    ' Enumerate Project1's dependencies.  
    Dim depends As String = ""  
    Dim proj As Project  
    For Each proj In CType(bd.RequiredProjects, Array)  
        depends &= proj.Name & vbCrLf  
    Next  

    MsgBox(bd.Project.Name & " has the following dependencies:" & _  
        vbCrLf & vbCrLf & depends)  

End Sub  
public void AddProjectExample(DTE dte)  
{  
    // Create a new solution.  
    Solution soln = dte.Solution;  
    string solnName = "NewSolution.sln";  
    string tempPath = System.IO.Path.GetTempPath();  

    soln.Create(tempPath, solnName);  

    // Create two new C# Console Application projects.  
    string templatePath = <template path>;  
    templatePath += "CSharpConsole.vsz";  
    string projName = "Project1";  
    soln.AddFromTemplate(templatePath, tempPath + projName,   
        projName, false);  
    Project proj1 = soln.Item(1);  
    projName = "Project2";  
    soln.AddFromTemplate(templatePath, tempPath + projName,   
        projName, false);  
    Project proj2 = soln.Item(2);  

    // Make Project1 dependent on Project2.  
    BuildDependency bd =   
        soln.SolutionBuild.BuildDependencies.Item(proj1.UniqueName);  
    bd.AddProject(proj2.UniqueName);  

    // Enumerate Project1's dependencies.  
    string depends = "";  
    foreach (Project proj in (Array)bd.RequiredProjects)  
    {  
        depends += proj.Name + Environment.NewLine;  
    }  

    MessageBox.Show(bd.Project.Name +   
        " has the following dependencies:" + "\r\n\r\n" + depends);  
}  

Remarks

If a call to AddProject creates a build dependency cycle, then the call fails.

Applies to