Udostępnij za pośrednictwem


Interfejs Solution3

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

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

Składnia

'Deklaracja
<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

Typ Solution3 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 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

Solution3 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.Solution3 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 Solution3.Item(EnvDTE.Constants.vsProjectKindMisc) lub Solution3.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)
    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);
    }
}

Zobacz też

Informacje

Przestrzeń nazw EnvDTE90