Navigieren in einem komplexen Windows Workflow

Für verschiedene Aufgaben in Visual Studio Ultimate müssen Sie Windows Workflow-Dateien ändern, von denen einige komplexe Strukturen und tief geschachtelte Elemente aufweisen. So können beispielsweise die folgenden Arten von Dateien schwierig zu navigieren und zu ändern sein:

  • Benutzerdefinierte Vorlagen für Team Foundation Build, die auf der Standardvorlage (DefaultTemplate.xaml) basieren.

  • Benutzerdefinierte Vorlagen für Visual Studio Lab Management, die auf der Standardvorlage (LabDefaultTemplate.xaml) basieren.

In einigen Themen zur Arbeit mit diesen Dateien ist die Suche bestimmter Elemente in einer Windows Workflow-Datei mit Syntax-Kurznotation beschrieben. In diesem Thema wird erläutert, wie Sie diese Syntax verwenden, um ein bestimmtes Element zu suchen, mit dem Sie arbeiten möchten.

In diesem Thema

  • Beispiel: "Ausführen von MSBuild Project für ein Projekt"

  • Suchen eines Workflowelements mit dem Workflow-Designer

  • Suchen eines Workflowelements mit dem XML-Editor

Beispiel: "Ausführen von MSBuild Project für ein Projekt"

Durch Ändern einer Kopie von DefaultTemplate.xaml können Sie z. B. einen benutzerdefinierten Buildprozess erstellen, um zu ändern, wie der Buildprozess mit MSBuild Code kompiliert. Um diese Änderung vornehmen zu können, müssen Sie eine Eigenschaft des Run MSBuild for Project-Elements ändern.

Bevor Sie dieses Element ändern können, müssen Sie zunächst durch 14 Containerelemente navigieren, um es in der Struktur des Workflows zu suchen. Beispielsweise wird die Struktur im Thema zu dieser Aufgabe folgendermaßen wiedergegeben:

  1. Sequenz (Sequence) >

  2. Auf Agent ausführen (AgentScope) >

  3. Kompilieren, Testen und Zuordnen von Changesets und Arbeitsaufgaben (TryCatch [Try]) >

  4. Sequenz (Sequence) >

  5. Kompilieren, Testen und Zuordnen von Changesets und Arbeitsaufgaben (Parallel) >

  6. Kompilieren und Testen TryCatch [Try] >

  7. Kompilieren und Testen Sequence >

  8. Für jede Konfiguration in BuildSettings.PlatformConfigurationsForEach [Body] >

  9. Kompilieren und Testen für Konfiguration Sequence >

  10. Wenn BuildSettings.HasProjectsToBuild If [Then] >

  11. Für jedes Projekt in BuildSettings.ProjectsToBuildForEach [Body] >

  12. Kompilieren des Projekts TryCatch [Try] >

  13. Kompilieren des Projekts Sequence >

  14. Ausführen von MSBuild für das Projekt MSBuild

Diese Syntax zeigt die geschachtelte Struktur, die das zu suchende Element enthält. Jedes Element folgt auf das Element, das es enthält. Beispielsweise ist das Run MSBuild for Project-Element im Compile the Project-Element enthalten, das im Try-Block des Try to Compile the Project-Elements enthalten ist.

Suchen eines Workflowelements mit dem Workflow-Designer

Berücksichtigen Sie bei der Verwendung des Workflow-Designers die folgenden Aspekte:

  • Vorteil: Sie können keine Schemafehler verursachen, durch die Ihr Workflow unterbrochen werden kann.

  • Vorteil: Dieser Ansatz bietet sich stärker an, wenn Sie lieber mit einem grafischen Modell arbeiten, statt Code zu bearbeiten.

  • Nachteil: Manche Aufgaben dauerten mit dem Designer möglicherweise länger als mit einem textbasierten Editor.

  • Nachteil: Der Workflow-Designer vergrößert die Workflowdateien im Vergleich zur Bearbeitung im XML-Editor.

Zum Öffnen einer Windows Workflow-Datei im Workflow-Designer öffnen Sie Quellcodeverwaltungs-Explorer, suchen Sie den Ordner mit der .xaml-Datei, und doppelklicken Sie dann auf diese.

Zum Suchen des Run MSBuild for Project-Elements im Workflow-Designer konzentrieren Sie sich zunächst auf die obersten Ebenen des vorherigen Beispiels:

  1. Sequenz (Sequence) >

  2. Auf Agent ausführen (AgentScope) >

  3. Kompilieren, Testen und Zuordnen von Changesets und Arbeitsaufgaben (TryCatch [Try]) >

  4. Sequenz (Sequence) >

  5. ...

Stellen Sie im Workflow-Designer sicher, dass eine vollständig reduzierte Ansicht des Process-Elements angezeigt wird. Klicken Sie am oberen Rand des Workflow-Designer-Fensters auf Process und dann auf Alle reduzieren. Das Fenster ähnelt nun der folgenden Ansicht:

Oberste Ebenen der Standardvorlage vollständig ausgeblendet

Um zum gesuchten Element zu gelangen, führen Sie im Run on Agent-Element einen der folgenden Schritte aus:

Zwei Navigationsmöglichkeiten in einem Workflowelement

Wenn Sie auf Zum Anzeigen doppelklicken doppelklicken, ähnelt das Ergebnis der folgenden Ansicht:

Aktivität für isoliertes Ausführen auf Agent

In dieser Ansicht können Sie sich einfach auf den Inhalt des Elements konzentrieren, mit dem Sie arbeiten. Der größere Kontext ist jedoch nicht sofort einsehbar.

Wenn Sie stattdessen auf das Symbol ErweiternErweitern klicken, ähnelt das Ergebnis der folgenden Ansicht:

Aktivität für Ausführen auf Agent im Kontext

In dieser Ansicht ist der größere Kontext sichtbar, der manchmal hilfreich sein kann. Wenn Sie jedoch tiefer in die Struktur navigieren, wird die Ansicht aufgrund ihrer Komplexität und ihres Umfangs möglicherweise unübersichtlich.

Verwenden Sie die Methode, die Ihnen am geeignetsten scheint. Wiederholen Sie das Muster, indem Sie oben in der Liste beginnen und dann die einzelnen Elemente abarbeiten, bis Sie das gesuchte Element erreichen.

Suchen eines Workflowelements mit dem XML-Editor

Berücksichtigen Sie bei der Verwendung eines textbasierten Editors, z. B. des XML-Editors, die folgenden Aspekte:

  • Vorteil: Sie können bestimmte Aufgaben schneller und effizienter ausführen. Beispielsweise können Sie schnell ein bestimmtes XAML-Codeelement suchen und ersetzen oder eine globale Änderung vornehmen.

  • Vorteil: Dieser Ansatz bietet sich stärker an, wenn Sie mit der Arbeit mit Code vertraut sind.

  • Nachteil: Sie riskieren Schemafehler, die den Workflow unterbrechen.

So suchen Sie ein Workflowelement mit dem XML-Editor

  1. Öffnen Sie im Quellcodeverwaltungs-Explorer den Ordner, der den Workflow enthält.

  2. Klicken Sie am oberen Rand des Fensters auf den Link neben Lokaler Pfad.

    Windows Explorer wird mit dem Inhalt des Ordners geöffnet.

    Tipp

    Wenn der Link Nicht zugeordnet neben der Bezeichnung Lokaler Pfad oben im Quellcodeverwaltungs-Explorer angezeigt wird, klicken Sie auf den Link, um das Serververzeichnis dem entsprechenden Verzeichnis im lokalen Arbeitsbereich zuzuordnen.

  3. Halten Sie in Windows-Explorer die UMSCHALTTASTE gedrückt, während Sie mit der rechten Maustaste auf die .xaml-Datei klicken, die den Workflow enthält. Lassen Sie die UMSCHALTTASTE los, und klicken Sie dann auf Als Pfad kopieren.

  4. Öffnen Sie in Visual Studio 2010 das Menü Datei, klicken Sie auf Öffnen, und klicken Sie anschließend auf Datei.

  5. Lassen Sie im Dialogfeld Datei öffnen den Cursor im Feld Dateiname, und drücken Sie STRG+V, um den Pfad einfügen.

  6. Klicken Sie auf das Symbol neben der Schaltfläche Öffnen, und klicken Sie dann auf Öffnen mit.

  7. Klicken Sie im Dialogfeld Öffnen mit auf XML (Text) Editor.

    Tipp

    Klicken Sie auf Als Standard festlegen, wenn Sie den XML-Editor (Texteditor) immer zum Bearbeiten von .xaml-Dateien, z. B. Windows Workflow-Dateien, verwenden möchten.

    Klicken Sie auf OK.

    Der Inhalt des Workflows wird im Fenster XML (Text) Editor angezeigt.

  8. Suchen Sie im XML-Editor (Texteditor, beispielsweise durch Drücken von STRG+F) das Element, und nehmen Sie dann die gewünschten Änderungen vor.

    Wichtig

    Stellen Sie sicher, dass keine der Änderungen gegen die Regeln des Workflowschemas verstößt. Andernfalls tritt beim Ausführen des Workflows ein Fehler auf.

Zusätzliche Ressourcen

Weitere Informationen finden Sie in den folgenden Themen auf der Microsoft-Website:

Siehe auch

Konzepte

Erstellen und Verwenden einer benutzerdefinierten Buildprozessvorlage

Erstellen eines Arbeitsbereichs zum Arbeiten mit dem Teamprojekt