Solution3 – rozhraní
Představuje všechny projekty a vlastnosti celého řešení v integrovaném vývojovém prostředí (IDE).Supersedes Solution and Solution2.
Obor názvů: EnvDTE90
Sestavení: EnvDTE90 (v EnvDTE90.dll)
Syntaxe
'Deklarace
<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 zveřejňuje následující členy.
Vlastnosti
Název | Popis | |
---|---|---|
AddIns | Získá AddIns kolekce, která obsahuje všechny aktuálně dostupné doplňky související s řešením. | |
Count | Získá hodnotu určující počet projektů v řešení. | |
DTE | Získá objekt rozšiřitelnosti nejvyšší úrovně. | |
Extender | Získá požadovaný rozšiřující objekt, pokud je pro tento objekt k dispozici. | |
ExtenderCATID | Získá ID kategorie rozšiřujícího objektu (CATID) pro objekt. | |
ExtenderNames | Získá seznam dostupných rozšiřujících objektů pro objekt. | |
FileName | Infrastruktura. Získá název souboru. | |
FullName | Získá úplnou cestu a název souboru objektu. | |
Globals | Získá Globals objekt, který obsahuje všechny hodnoty proměnných, které mohou být uloženy v souboru řešení (SLN), soubor projektu nebo data profilu uživatele. | |
IsDirty | Infrastruktura. Určuje, zda je řešení je dirty (změněn, ale nebyl uložen). | |
IsOpen | Získá, zda je otevřené řešení. | |
Parent | Bezprostřední nadřízený objekt získá Solution2 objektu. | |
Projects | Získá kolekce projektů aktuálně v roztoku. | |
Properties | Získá kolekce všech vlastností, které se týkají Solution2 objektu. | |
Saved | Získá nebo nastaví hodnotu označující, zda řešení nebyl upraven od poslední Probíhá ukládání nebo otevírání. | |
SolutionBuild | Získá SolutionBuild objekt pro řešení, které představuje kořenový adresář sestavení modelu automatizačních řešení úrovni. | |
TemplatePath | Nahrazena GetProjectTemplate. |
Nahoru
Metody
Název | Popis | |
---|---|---|
AddFromFile | Přidá projekt do řešení, které je založeno na souboru projektu, který je již uložen v systému. | |
AddFromTemplate | Zkopíruje existující soubor projektu a všechny položky nebo podadresáře, které obsahuje, do určeného umístění a přidá jej k řešení. | |
AddSolutionFolder | Přidá do složky řešení ProjectItems kolekce. | |
Close | Zavře aktuální řešení. | |
Create | Vytvoří prázdný řešení v zadaném adresáři se zadaným názvem. | |
FindProjectItem | Vyhledá položku v projektu. | |
GetEnumerator | Vrátí výčet položek v kolekci. | |
GetProjectItemTemplate | Vrátí cestu do šablony položky projektu uvedeno. | |
GetProjectItemTemplates | Vrátí kolekci šablon položek projektu pro zadaný projekt. | |
GetProjectTemplate | Vrátí cestu k šabloně projektu.Má-li šablona RequiredFrameworkVersion prvek, který je vyšší než 4.0, měli byste poskytnout verze ve volání tak, aby hledání šablony bude nalezena shoda.Například namísto volací GetProjectTemplate("Extensibility\\1033\\VSIXProject.zip", "CSharp"); call GetProjectTemplate("Extensibility\\1033\\VSIXProject.zip|FrameworkVersion=4.5", "CSharp");. | |
Item | Vrací indexovaný člen Projects kolekce. | |
Open | Otevře zadaný řešení. | |
ProjectItemsTemplatePath | Nahrazena GetProjectItemTemplate. | |
Remove | Odebere zadaný projekt z řešení. | |
SaveAs | Uloží řešení. |
Nahoru
Poznámky
Solution3 Objekt je kolekce všech projektů v aktuální instance rozhraní IDE a všechny vlastnosti celého řešení, jako je například konfigurace sestavení.Solution3 Objekt obsahuje prvek projektu pro každý projekt, ať už je zabalené projektu, dílčí projekt nebo projekt nejvyšší úrovně.
Odkazovat tento objekt pomocí DTE.Solution.Virtuální projekty, například MiscFiles nebo Položky_řešení, pomocí Solution3.Item(EnvDTE.Constants.vsProjectKindMisc) nebo Solution3.Item(EnvDTE.Constants.vsProjectKindSolutionItems).
Příklady
Informace o spuštění tohoto kódu doplňku naleznete v Postupy: Kompilace a spuštění příkladů kódu objektu automatizace.
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);
}
}