Sdílet prostřednictvím


Solution2 – rozhraní

Představuje všechny projekty a vlastnosti celého řešení v integrované vývojové prostředí (IDE).

Obor názvů:  EnvDTE80
Sestavení:  EnvDTE80 (v EnvDTE80.dll)

Syntaxe

'Deklarace
<GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")> _
Public Interface Solution2 _
    Inherits _Solution
[GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")]
public interface Solution2 : _Solution
[GuidAttribute(L"FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")]
public interface class Solution2 : _Solution
[<GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")>]
type Solution2 =  
    interface
        interface _Solution
    end
public interface Solution2 extends _Solution

Typ Solution2 zveřejňuje následující členy.

Vlastnosti

  Název Popis
Veřejná vlastnost AddIns (Zděděno z _Solution.)
Veřejná vlastnost AddIns Získává AddIns obsahující všechny aktuálně dostupné doplňky související s řešením.
Veřejná vlastnost Count (Zděděno z _Solution.)
Veřejná vlastnost Count Získá hodnotu určující počet projektů v roztoku.
Veřejná vlastnost DTE (Zděděno z _Solution.)
Veřejná vlastnost DTE Načtení objektu nejvyšší úrovně rozšiřitelnosti.
Veřejná vlastnost Extender[String] (Zděděno z _Solution.)
Veřejná vlastnost Extender[String] Požadovaný objekt zařízení Extender získá, pokud je k dispozici pro tento objekt.
Veřejná vlastnost ExtenderCATID (Zděděno z _Solution.)
Veřejná vlastnost ExtenderCATID Kategorie zařízení Extender ID (CATID) získá pro objekt.
Veřejná vlastnost ExtenderNames (Zděděno z _Solution.)
Veřejná vlastnost ExtenderNames Získá seznam dostupných zařízení Extender pro objekt.
Veřejná vlastnost FileName (Zděděno z _Solution.)
Veřejná vlastnost FileName Infrastruktura. Microsoft pouze pro interní použití.
Veřejná vlastnost FullName (Zděděno z _Solution.)
Veřejná vlastnost FullName Získává úplnou cestu a název souboru objektu.
Veřejná vlastnost Globals (Zděděno z _Solution.)
Veřejná vlastnost Globals Získává Globals objekt, který obsahuje hodnoty proměnné uložené v souboru řešení (.sln), soubor projektu nebo data profilu uživatele.
Veřejná vlastnost IsDirty (Zděděno z _Solution.)
Veřejná vlastnost IsDirty Infrastruktura. Microsoft pouze pro interní použití.
Veřejná vlastnost IsOpen (Zděděno z _Solution.)
Veřejná vlastnost IsOpen Načte hodnotu, která označuje, zda je otevřené řešení.
Veřejná vlastnost Parent (Zděděno z _Solution.)
Veřejná vlastnost Parent Získá bezprostřední nadřízený objekt objektu Solution2.
Veřejná vlastnost Projects (Zděděno z _Solution.)
Veřejná vlastnost Projects Získá kolekce projektů právě v roztoku.
Veřejná vlastnost Properties (Zděděno z _Solution.)
Veřejná vlastnost Properties Získá všechny vlastnosti, které se vztahují k Solution2 objektu kolekce.
Veřejná vlastnost Saved (Zděděno z _Solution.)
Veřejná vlastnost 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í.
Veřejná vlastnost SolutionBuild (Zděděno z _Solution.)
Veřejná vlastnost SolutionBuild Získává SolutionBuild řešení, což představuje kořenový sestavení modelu automatizace řešení na úrovni objektu.
Veřejná vlastnost TemplatePath[String] (Zděděno z _Solution.)
Veřejná vlastnost TemplatePath[String] Nahrazena GetProjectTemplate.

Nahoru

Metody

  Název Popis
Veřejná metoda AddFromFile(String, Boolean) (Zděděno z _Solution.)
Veřejná metoda AddFromFile(String, Boolean) Přidá projektu řešení založené na souboru projektu již uloženy v systému.
Veřejná metoda AddFromTemplate(String, String, String, Boolean) (Zděděno z _Solution.)
Veřejná metoda AddFromTemplate(String, String, String, Boolean) Kopie existujícího projektu souboru a položky nebo podadresáře obsahuje do zadaného umístění a přidá k roztoku.
Veřejná metoda AddSolutionFolder Přidá k roztoku složku ProjectItems kolekce.
Veřejná metoda Close(Boolean) (Zděděno z _Solution.)
Veřejná metoda Close(Boolean) Zavře aktuální řešení.
Veřejná metoda Create(String, String) (Zděděno z _Solution.)
Veřejná metoda Create(String, String) Vytvoří prázdný řešení v zadaném adresáři se zadaným názvem.
Veřejná metoda FindProjectItem(String) (Zděděno z _Solution.)
Veřejná metoda FindProjectItem(String) Vyhledá položku v projektu.
Veřejná metoda GetEnumerator() (Zděděno z _Solution.)
Veřejná metoda GetEnumerator() Vrátí hodnotu výčtu položek v kolekci.
Veřejná metoda GetProjectItemTemplate Šablona projektu uvedené zboží vrátí cestu.
Veřejná metoda GetProjectTemplate Šablona projektu uvedeno vrátí cestu.
Veřejná metoda Item(Object) (Zděděno z _Solution.)
Veřejná metoda Item(Object) Vrací indexovaný člen Projects kolekce.
Veřejná metoda Open(String) (Zděděno z _Solution.)
Veřejná metoda Open(String) Otevře zadaný řešení.
Veřejná metoda ProjectItemsTemplatePath(String) (Zděděno z _Solution.)
Veřejná metoda ProjectItemsTemplatePath(String) Nahrazena GetProjectItemTemplate.
Veřejná metoda Remove(Project) (Zděděno z _Solution.)
Veřejná metoda Remove(Project) Odebere zadaný projekt z roztoku.
Veřejná metoda SaveAs(String) (Zděděno z _Solution.)
Veřejná metoda SaveAs(String) Uloží řešení.

Nahoru

Poznámky

Toto rozhraní obsahuje kolekci všech projektů v aktuální instance IDE a všechny vlastnosti celého řešení, jako je například konfigurace sestavení.Zda je zalomený projektu, dílčí projekt nebo projekt nejvyšší úrovně obsahuje prvek projektu pro každý projekt.

Otevřené řešení můžete najít pomocí DTE.Solution vlastnost.Chcete-li virtuální projekty, například MiscFiles nebo Položky_řešení, použijte Solution.Item(EnvDTE.Constants.vsProjectKindMisc nebo Solution.Item(EnvDTE.Constants.vsProjectKindSolutionItems.

Příklady

Informace jak spustit tento kód v Jak: kompilace a spuštění příkladů kódu automatizace objektu modelu.

Následující kód vytvoří nové řešení aplikace konzoly v dané cesty.

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

Sub SolutionExample(ByVal dte As DTE2)
    ' This function creates a solution and adds a Visual Basic Console
    ' project to it.
    Try
        Dim soln As Solution2 = CType(DTE.Solution, Solution2)
        Dim vbTemplatePath As String
        ' This path must exist on your computer.
        ' Replace <file path> below with an actual path.
        Dim vbPrjPath As String = <file path>
        MsgBox("starting")
        ' Get the project template path for a Visual Basic console application project.
        vbTemplatePath = soln.GetProjectTemplate _
        ("ConsoleApplication.zip", "VisualBasic")
        ' Create a new Visual Baic Console project using the template obtained 
        ' above.
        soln.AddFromTemplate(vbTemplatePath, vbPrjPath, _
        "New Visual Basic Console Project", False)
        MsgBox("done")
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
//you will need to add this reference to your project as well
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.
    SolutionExample((DTE2)_applicationObject);
}

public void SolutionExample(DTE2 dte)
{
    // This function creates a solution and adds a Visual C# Console
    // project to it.
    try{
        Solution2 soln = (Solution2)_applicationObject.Solution;
        String csTemplatePath;
        // The file path must exist on your computer.
        // Replace <file path> below with an actual path.
        String csPrjPath = <file path>;
    MessageBox.Show("Starting...");
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);
    }
}

Viz také

Referenční dokumentace

EnvDTE80 – obor názvů