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 | |
---|---|---|
AddIns | Pobiera AddIns kolekcji, która zawiera wszystkie aktualnie dostępne dodatki związane z rozwiązaniem. | |
Count | Pobiera wartość wskazującą liczbę projektów w rozwiązaniu. | |
DTE | Pobiera obiekt rozszerzający najwyższego poziomu. | |
Extender | Pobiera żądany obiekt rozszerzenia, jeśli jest on dostępny dla tego obiektu. | |
ExtenderCATID | Pobiera ID kategorii rozszerzenia (Identyfikator CATID) dla obiektu. | |
ExtenderNames | Pobiera listę dostępnych rozszerzeń dla obiektu. | |
FileName | Infrastruktura. Pobiera nazwę pliku. | |
FullName | Pobiera pełną ścieżkę i nazwę pliku obiektu. | |
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. | |
IsDirty | Infrastruktura. Określa, czy rozwiązanie jest zabrudzony (zmodyfikowany, ale nie zapisane). | |
IsOpen | Pobiera się, czy rozwiązanie jest otwarte. | |
Parent | Pobiera obiekt nadrzędny natychmiastowego Solution2 obiektu. | |
Projects | Pobiera Kolekcja projektów obecnie w roztworze. | |
Properties | Zwraca kolekcję wszystkich właściwości, które odnoszą się do Solution2 obiektu. | |
Saved | Pobiera lub ustawia wartość wskazującą, czy rozwiązania nie został zmodyfikowany od czasu ostatniego jest zapisywanie lub otwieranie. | |
SolutionBuild | Pobiera SolutionBuild obiektu dla roztworu, który reprezentuje katalog główny model automatyzacji kompilacji na poziomie rozwiązanie. | |
TemplatePath | Zastąpiony przez GetProjectTemplate. |
Początek
Metody
Nazwa | Opis | |
---|---|---|
AddFromFile | Dodaje projektu do rozwiązania opartego na pliku projektu już przechowywane w systemie. | |
AddFromTemplate | Kopiuje istniejący projektu pliku, oraz wszystkie elementy lub podkatalogi które zawiera, do określonej lokalizacji i dodaje go do rozwiązania. | |
AddSolutionFolder | Dodaje folder rozwiązanie do ProjectItems kolekcji. | |
Close | Umożliwia zamknięcie bieżącego rozwiązania. | |
Create | Tworzy puste rozwiązań w podanym katalogu o podanej nazwie. | |
FindProjectItem | Lokalizuje element projektu. | |
GetEnumerator | Zwraca wartość wyliczenia dla elementów w kolekcji. | |
GetProjectItemTemplate | Zwraca ścieżkę do szablonu elementu wskazanego projektu. | |
GetProjectItemTemplates | Zwraca kolekcję szablonów element projektu dla określonego projektu. | |
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");. | |
Item | Zwraca indeksowanych członkiem Projects kolekcji. | |
Open | Otwiera określonego rozwiązania. | |
ProjectItemsTemplatePath | Zastąpiony przez GetProjectItemTemplate. | |
Remove | Usuwa określony projekt z rozwiązania. | |
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);
}
}