Udostępnij za pośrednictwem


Interfejs Solution4

Reprezentuje wszystkie projekty i rozwiązania na poziomie właściwości w zintegrowane środowisko programistyczne (IDE).Supersedes Solution, Solution2, and Solution3.

Przestrzeń nazw:  EnvDTE100
Zestaw:  EnvDTE100 (w EnvDTE100.dll)

Składnia

'Deklaracja
<GuidAttribute("CDA7305C-78B6-4D9D-90AD-93EBE71F9341")> _
Public Interface Solution4 _
    Inherits Solution3
[GuidAttribute("CDA7305C-78B6-4D9D-90AD-93EBE71F9341")]
public interface Solution4 : Solution3
[GuidAttribute(L"CDA7305C-78B6-4D9D-90AD-93EBE71F9341")]
public interface class Solution4 : Solution3
[<GuidAttribute("CDA7305C-78B6-4D9D-90AD-93EBE71F9341")>]
type Solution4 =  
    interface 
        interface Solution3 
    end
public interface Solution4 extends Solution3

Typ Solution4 uwidacznia następujące elementy członkowskie.

Właściwości

  Nazwa Opis
Właściwość publiczna AddIns Pobiera AddIns kolekcji, która zawiera wszystkie aktualnie dostępne dodatki związane z rozwiązaniem.
Właściwość publiczna Count Pobiera wartość wskazującą liczbę projektów w rozwiązaniu.
Właściwość publiczna DTE Pobiera obiekt rozszerzający najwyższego poziomu.
Właściwość publiczna Extender Pobiera żądany obiekt rozszerzenia, jeśli jest on dostępny dla tego obiektu.
Właściwość publiczna ExtenderCATID Pobiera ID kategorii rozszerzenia (Identyfikator CATID) dla obiektu.
Właściwość publiczna ExtenderNames Pobiera listę dostępnych rozszerzeń dla obiektu.
Właściwość publiczna FileName Infrastruktura. Pobiera nazwę pliku.
Właściwość publiczna FullName Pobiera pełną ścieżkę i nazwę pliku obiektu.
Właściwość publiczna Globals Pobiera Globals obiekt, który zawiera wszystkie wartości zmiennych, które mogą być zapisane w pliku rozwiązania (.sln), plik projektu lub dane profilu użytkownika.
Właściwość publiczna IsDirty Infrastruktura. Określa, czy rozwiązanie jest zabrudzony (zmodyfikowany, ale nie zapisane).
Właściwość publiczna IsOpen Pobiera się, czy rozwiązanie jest otwarte.
Właściwość publiczna Parent Pobiera obiekt nadrzędny natychmiastowego Solution2 obiektu.
Właściwość publiczna Projects Pobiera Kolekcja projektów obecnie w roztworze.
Właściwość publiczna Properties Zwraca kolekcję wszystkich właściwości, które odnoszą się do Solution2 obiektu.
Właściwość publiczna Saved Pobiera lub ustawia wartość wskazującą, czy rozwiązania nie został zmodyfikowany od czasu ostatniego jest zapisywanie lub otwieranie.
Właściwość publiczna SolutionBuild Pobiera SolutionBuild obiektu dla roztworu, który reprezentuje katalog główny model automatyzacji kompilacji na poziomie rozwiązanie.
Właściwość publiczna TemplatePath Zastąpiony przez GetProjectTemplate.

Początek

Metody

  Nazwa Opis
Metoda publiczna AddFromFile Dodaje projektu do rozwiązania opartego na pliku projektu już przechowywane w systemie.
Metoda publiczna AddFromTemplate Kopiuje istniejący projektu pliku, oraz wszystkie elementy lub podkatalogi które zawiera, do określonej lokalizacji i dodaje go do rozwiązania.
Metoda publiczna AddFromTemplateEx Kopiuje istniejący projektu pliku, oraz wszystkie elementy lub podkatalogi które zawiera, do określonej lokalizacji i dodaje go do rozwiązania.
Metoda publiczna AddSolutionFolder Dodaje folder rozwiązanie do ProjectItems kolekcji.
Metoda publiczna Close Umożliwia zamknięcie bieżącego rozwiązania.
Metoda publiczna Create Tworzy puste rozwiązań w podanym katalogu o podanej nazwie.
Metoda publiczna FindProjectItem Lokalizuje element projektu.
Metoda publiczna GetEnumerator Zwraca wartość wyliczenia dla elementów w kolekcji.
Metoda publiczna GetProjectItemTemplate Zwraca ścieżkę do szablonu elementu wskazanego projektu.
Metoda publiczna GetProjectItemTemplates Zwraca kolekcję szablonów element projektu dla określonego projektu.
Metoda publiczna GetProjectTemplate Zwraca ścieżkę do szablonu określonego projektu.Jeśli szablon ma wyższy niż 4.0 element RequiredFrameworkVersion, tak aby wyszukiwania dla szablonu znajdzie dopasowanie powinny zapewnić wersji w wywołaniu.Na przykład, zamiast telefonicznej GetProjectTemplate("Extensibility\\1033\\VSIXProject.zip", "CSharp"); call GetProjectTemplate("Extensibility\\1033\\VSIXProject.zip|FrameworkVersion=4.5", "CSharp");.
Metoda publiczna Item Zwraca indeksowanych członkiem Projects kolekcji.
Metoda publiczna Open Otwiera określonego rozwiązania.
Metoda publiczna ProjectItemsTemplatePath Zastąpiony przez GetProjectItemTemplate.
Metoda publiczna Remove Usuwa określony projekt z rozwiązania.
Metoda publiczna SaveAs Zapisuje rozwiązanie.

Początek

Uwagi

Solution4 Obiekt jest kolekcją wszystkich projektów w bieżącym wystąpieniu programu IDE i wszystkie właściwości całego rozwiązania, takie jak konfiguracje kompilacji.Solution4 Obiekt zawiera element projektu dla każdego projektu, czy jest zapakowane projektu, podprojektu lub projektu najwyższego poziomu.

Odwoływać się tego obiektu za pomocą DTE.Solution.Odwołać się do wirtualnego projekty, takie jak MiscFiles lub SolutionItems, użyj Solution4.Item(EnvDTE.Constants.vsProjectKindMisc) lub Solution4.Item(EnvDTE.Constants.vsProjectKindSolutionItems).

Przykłady

Więcej informacji na temat uruchamiania tego kodu dodatku: Porady: kompilowanie i uruchamianie kodu modelu obiektów automatyzacji — przykłady.

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

Sub Solution4Example(ByVal dte As DTE2)
    ' This function creates a solution and adds a Visual C# Console
    ' project to it.
    Try
        Dim soln As Solution4 = CType(DTE.Solution, Solution4)
        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.
    Solution4Example((DTE2)_applicationObject);
}

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

Zobacz też

Informacje

Przestrzeń nazw EnvDTE100