Compartir a través de


Solution3 (Interfaz)

Representa todos los proyectos y propiedades de soluciones del entorno de desarrollo integrado (IDE). Reemplaza Solution y Solution2.

Espacio de nombres:  EnvDTE90
Ensamblado:  EnvDTE90 (en EnvDTE90.dll)

Sintaxis

'Declaración
<GuidAttribute("DF23915F-FDA3-4DD5-9CAA-2E1372C2BB16")> _
Public Interface Solution3 _
    Inherits Solution2
[GuidAttribute("DF23915F-FDA3-4DD5-9CAA-2E1372C2BB16")]
public interface Solution3 : Solution2
[GuidAttribute(L"DF23915F-FDA3-4DD5-9CAA-2E1372C2BB16")]
public interface class Solution3 : Solution2
[<GuidAttribute("DF23915F-FDA3-4DD5-9CAA-2E1372C2BB16")>]
type Solution3 =  
    interface
        interface Solution2
    end
public interface Solution3 extends Solution2

El tipo Solution3 expone los siguientes miembros.

Propiedades

  Nombre Descripción
Propiedad pública AddIns (Se hereda de Solution2).
Propiedad pública AddIns Obtiene una colección AddIns, que contiene todos los complementos disponibles actualmente y que están asociados a la solución.
Propiedad pública Count (Se hereda de Solution2).
Propiedad pública Count Obtiene un valor que indica el número de proyectos de la solución.
Propiedad pública DTE (Se hereda de Solution2).
Propiedad pública DTE Obtiene el objeto de extensibilidad de nivel superior.
Propiedad pública Extender[String] (Se hereda de Solution2).
Propiedad pública Extender[String] Obtiene el objeto Extender solicitado si está disponible para este objeto.
Propiedad pública ExtenderCATID (Se hereda de Solution2).
Propiedad pública ExtenderCATID Obtiene el identificador de categoría (CATID) del objeto Extender.
Propiedad pública ExtenderNames (Se hereda de Solution2).
Propiedad pública ExtenderNames Obtiene una lista de los objetos Extender disponibles para el objeto.
Propiedad pública FileName (Se hereda de Solution2).
Propiedad pública FileName Infraestructura. Obtiene el nombre de archivo.
Propiedad pública FullName (Se hereda de Solution2).
Propiedad pública FullName Obtiene la ruta de acceso completa y el nombre de archivo del objeto.
Propiedad pública Globals (Se hereda de Solution2).
Propiedad pública Globals Devuelve el objeto Globals que contiene los valores de variable que pueden guardarse en el archivo de solución (.sln), en el archivo de proyecto o en los datos de perfil del usuario.
Propiedad pública IsDirty (Se hereda de Solution2).
Propiedad pública IsDirty Infraestructura. Determina si la solución ha cambiado (es decir, se ha modificado pero no guardado).
Propiedad pública IsOpen (Se hereda de Solution2).
Propiedad pública IsOpen Obtiene un valor que indica si una solución está abierta.
Propiedad pública Parent (Se hereda de Solution2).
Propiedad pública Parent Obtiene el objeto primario inmediato de un objeto Solution2.
Propiedad pública Projects (Se hereda de Solution2).
Propiedad pública Projects Obtiene una colección de los proyectos actuales de la solución.
Propiedad pública Properties (Se hereda de Solution2).
Propiedad pública Properties Obtiene una colección de todas las propiedades pertenecientes al objeto Solution2.
Propiedad pública Saved (Se hereda de Solution2).
Propiedad pública Saved Obtiene o establece un valor que indica si una solución no se ha modificado desde la última vez que se guardó o se abrió.
Propiedad pública SolutionBuild (Se hereda de Solution2).
Propiedad pública SolutionBuild Obtiene el objeto SolutionBuild para la solución, que representa la raíz del modelo de automatización de compilación en cuanto a la solución.
Propiedad pública TemplatePath[String] (Se hereda de Solution2).
Propiedad pública TemplatePath[String] Se reemplaza por GetProjectTemplate.

Arriba

Métodos

  Nombre Descripción
Método público AddFromFile(String, Boolean) (Se hereda de Solution2).
Método público AddFromFile(String, Boolean) Agrega un proyecto a la solución, basado en un archivo de proyecto ya almacenado en el sistema.
Método público AddFromTemplate(String, String, String, Boolean) (Se hereda de Solution2).
Método público AddFromTemplate(String, String, String, Boolean) Copia un archivo de proyecto existente y todos los elementos o subdirectorios que contenga a la ubicación especificada, y lo agrega a la solución.
Método público AddSolutionFolder(String) (Se hereda de Solution2).
Método público AddSolutionFolder(String) Agrega una carpeta de soluciones a una colección ProjectItems.
Método público Close(Boolean) (Se hereda de Solution2).
Método público Close(Boolean) Cierra la solución actual.
Método público Create(String, String) (Se hereda de Solution2).
Método público Create(String, String) Crea una solución vacía en el directorio especificado con el nombre especificado.
Método público FindProjectItem(String) (Se hereda de Solution2).
Método público FindProjectItem(String) Localiza un elemento del proyecto.
Método público GetEnumerator() (Se hereda de Solution2).
Método público GetEnumerator() Devuelve una enumeración para los elementos de una colección.
Método público GetProjectItemTemplate(String, String) (Se hereda de Solution2).
Método público GetProjectItemTemplate(String, String) Devuelve una ruta de acceso a la plantilla de elementos del proyecto indicada.
Método público GetProjectItemTemplates Devuelve una colección de plantillas de elementos de proyecto para el proyecto especificado.
Método público GetProjectTemplate(String, String) (Se hereda de Solution2).
Método público GetProjectTemplate(String, String) Devuelve una ruta de acceso a la plantilla de proyecto especificada.
Método público Item(Object) (Se hereda de Solution2).
Método público Item(Object) Devuelve un miembro indizado de una colección Projects.
Método público Open(String) (Se hereda de Solution2).
Método público Open(String) Abre una solución especificada.
Método público ProjectItemsTemplatePath(String) (Se hereda de Solution2).
Método público ProjectItemsTemplatePath(String) Se reemplaza por GetProjectItemTemplate.
Método público Remove(Project) (Se hereda de Solution2).
Método público Remove(Project) Quita el proyecto especificado de la solución.
Método público SaveAs(String) (Se hereda de Solution2).
Método público SaveAs(String) Guarda la solución.

Arriba

Comentarios

El objeto Solution3 es una colección de todos los proyectos en la instancia actual del IDE y todas las propiedades de soluciones como, por ejemplo, configuraciones de compilación. El objeto Solution3 contiene un elemento de proyecto por cada proyecto, ya sea un proyecto ajustado, un subproyecto o un proyecto de nivel superior.

Se hace referencia a este objeto mediante DTE.Solution. Para hacer referencia a proyectos virtuales como MiscFiles o SolutionItems, utilice Solution3.Item(EnvDTE.Constants.vsProjectKindMisc) o Solution3.Item(EnvDTE.Constants.vsProjectKindSolutionItems).

Ejemplos

Para obtener información sobre cómo ejecutar este código de complemento, vea Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización.

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)
    Solution3Example(_applicationObject)
End Sub

Sub Solution3Example(ByVal dte As DTE2)
    ' This function creates a solution and adds a Visual C# Console
    ' project to it.
    Try
        Dim soln As Solution3 = CType(DTE.Solution, Solution3)
        Dim csTemplatePath As String
        ' This path must exist on your computer.
        ' Replace <file path> below with an actual path.
        Dim csPrjPath As String = "<file path>"
        MsgBox("starting")
        ' Get the project template path for a C# console project.
        csTemplatePath = CType(soln.GetProjectTemplate _
        ("ConsoleApplication.zip", "CSharp"), string)
        ' Create a new C# Console project using the template obtained 
        ' above.
        soln.AddFromTemplate(csTemplatePath, csPrjPath, _
        "New CSharp Console Project", False)
        MsgBox("done")
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
using System.Windows.Forms;
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.
    Solution3Example((DTE2)_applicationObject);
}

public void Solution3Example(DTE2 dte)
{
    // This function creates a solution and adds a Visual C# Console
    // project to it.
    try{
        Solution3 soln = (Solution3)_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);
    }
}

Vea también

Referencia

EnvDTE90 (Espacio de nombres)