_Solution Interface

Definition

Represents all projects and solution-wide properties in the integrated development environment (IDE). Refer to Solution for this functionality. Do not instantiate from this class.

[System.Runtime.InteropServices.Guid("26F6CC4B-7A48-4E4D-8AF5-9E960232E05F")]
[System.Runtime.InteropServices.TypeLibType(4160)]
public interface _Solution : System.Collections.IEnumerable
Derived
Attributes
Implements

Examples

Sub SolutionExample()  
   'This function creates a solution and adds a Visual Basic Console  
   'project to it.   
   Dim soln As Solution  
   Dim proj As Project  
   Dim msg As String  

   'Create a reference to the solution.  
   soln = DTE.Solution  

   ' Create a new solution.  
   soln.Create("c:\temp2", "MyNewSolution")  

   ' Create a new VB project from a template.   
   ' Adjust the template path and save path as needed.  
   proj = soln.AddFromTemplate("<template path>\ConsoleApplication.vbproj", "c:\temp2", "My New Project", True)  
   ' Save the new solution and project.  
   soln.SaveAs("c:\temp2\newsolution.sln")  
   msg = "Created new solution: " & soln.FullName & vbCrLf  
   msg = msg & "Created new project: " & proj.Name  
   MsgBox(msg)  
End Sub  

Remarks

The Solution object is a collection of all the projects in the current instance of the IDE and all solution-wide properties such as build configurations. The Solution object contains a project element for every project, whether it is a wrapped project, a subproject, or a top-level project.

Reference this object using DTE.Solution. To refer to virtual projects such as MiscFiles or SolutionItems, use Solution.Item(EnvDTE.Constants.vsProjectKindMisc) or Solution.Item(EnvDTE.Constants.vsProjectKindSolutionItems).

Properties

AddIns

Gets an AddIns collection, which contains all currently available add-ins associated with the solution.

Count

Gets a value indicating the number of objects in the collection.

DTE

Gets the top-level extensibility object.

Extender[String]

Gets the requested Extender object if it is available for this object.

ExtenderCATID

Gets the Extender category ID (CATID) for the object.

ExtenderNames

Gets a list of available Extenders for the object.

FileName

Microsoft Internal Use Only.

FullName

Gets the full path and name of the object's file.

Globals

Gets the Globals that contains add-in values that may be saved in the solution (.sln) file, the project file, or in the user's profile data.

IsDirty

Microsoft Internal Use Only.

IsOpen

Determines if a solution is open.

Parent

Gets the immediate parent object of a _Solution.

Projects

Gets a collection of the projects currently in the solution.

Properties

Gets a collection of all properties that pertain to the _Solution.

Saved

Returns true if the object has not been modified since last being saved or opened.

SolutionBuild

Gets the SolutionBuild object for the solution, which represents the root of the build automation model at the solution level.

TemplatePath[String]

Gets the full path and name of the directory that contains templates for the specified type of project.

Methods

AddFromFile(String, Boolean)

Adds a project to the solution, based on a project file already stored in the system.

AddFromTemplate(String, String, String, Boolean)

Copies an existing project file, and any items or subdirectories it contains, to the specified location and adds it to the solution.

Close(Boolean)

Closes the current solution.

Create(String, String)

Creates an empty solution in the specified directory with the specified name.

FindProjectItem(String)

Locates an item in a project.

GetEnumerator()

Returns an enumeration for items in a collection.

Item(Object)

Returns a Project object in a Projects collection.

Open(String)

Opens the solution in the specified view.

ProjectItemsTemplatePath(String)

Returns the location of project item templates for the specified project type.

Remove(Project)

Removes the specified project from the solution.

SaveAs(String)

Saves the solution.

Applies to