Entwickeln von SharePoint-Workflows mit Visual StudioDevelop SharePoint workflows using Visual Studio

SharePoint unterstützt zwei primäre Workflowentwicklungsumgebungen zur Erstellung von Workflows: SharePoint Designer und Visual Studio. Dieser Artikel bietet einen Überblick über beide und erläutert die jeweiligen Vor- und Nachteile.SharePoint supports two primary workflow development environments for authoring workflows: SharePoint Designer and Visual Studio. This article summarizes both and discusses the advantages and disadvantages of each.

Grundlegendes zur Erstellung von SharePoint-WorkflowsAuthoring basics for SharePoint workflows

Hinweis

Hinweise zur Einrichtung und Konfiguration von Microsoft SharePoint und dem Workflow-Manager-Client 1.0-Server finden Sie unter Einrichten und Konfigurieren von SharePoint-Workflow-Manager.Note: For guidance on setting up and configuring Microsoft SharePoint and the Workflow Manager Client 1.0 server, see Set up and configure SharePoint Workflow Manager.

Wie bei früheren Versionen stellt Microsoft SharePoint zwei primäre Workflowentwicklungsumgebungen zur Erstellung von Workflows bereit: Microsoft SharePoint Designer und Microsoft Visual Studio. Der Unterschied zu früheren Version besteht allerdings darin, dass bei Verwendung von Visual Studio keine codebasierte Erstellungsstrategie mehr bereitgestellt wird. Stattdessen bieten sowohl SharePoint Designer als auch Visual Studio unabhängig von dem von Ihnen ausgewählten Entwicklungstool eine vollständig deklarative, codefreie Erstellungsumgebung.As with previous versions, Microsoft SharePoint provides two primary workflow development environments for authoring workflows: Microsoft SharePoint Designer and Microsoft Visual Studio. However, what differs from previous versions is that using Visual Studio no longer provides a code-based authoring strategy. Instead, both SharePoint Designer and Visual Studio provide a fully declarative, no-code authoring environment regardless of the development tool you select.

Hinweis

Als Ergänzung zur Erstellung von Workflows in SharePoint Designer können Sie auch Microsoft Visio 2013 verwenden, um Ihre Workflowlogik mithilfe von Visio 2013-Shapes zu strukturieren, und Ihre Logik dann in SharePoint Designer 2013 importieren.Note: As a complement to authoring workflows in SharePoint Designer, you can also use Microsoft Visio 2013 to structure your workflow logic by using Visio 2013 shapes, and then import your logic into SharePoint Designer 2013. Informationen zur Verwendung von Visio 2013 zum Erstellen Ihrer Workflowlogik finden Sie unter Workflowentwicklung in SharePoint Designer und Visio.For information about using Visio 2013 to author your workflow logic, see Workflow development in SharePoint Designer and Visio.

Deklarative WorkflowsDeclarative workflows

Zunächst sollten Sie wissen, was unter "deklarativen" Workflows zu verstehen ist. Dieser Begriff bedeutet, dass der Workflow nicht in Form von Code erstellt und dann zu verwalteten Assemblys kompiliert wird, sondern in XAML (wortwörtlich) beschrieben und dann zur Laufzeit interpretativ ausgeführt wird.Let's first be clear what is meant by "declarative" workflows. This term means that instead of being authored in code and then compiled into managed assemblies, the workflow is described (literally) in XAML and then executed interpretively at run time.

Das XAML wird von den Workflowbausteinen abgeleitet, die Sie in Workflow-Designer (falls Sie Visual Studio verwenden) oder der Workflowdesignoberfläche von SharePoint Designer (oder Visio, mehr dazu später) bearbeiten. Die Bausteine selbst sind die visuellen Workflowdesignobjekte in der Entwurfstoolbox: Stufen, Bedingungen, Aktionen, Ereignisse usw. Der Satz von Tools in den entsprechenden Toolboxes (Visual Studio oder SharePoint Designer) unterscheidet sich geringfügig, das Konzept des deklarativen Workflows bleibt jedoch das gleiche.The XAML is derived (or inferred) from the workflow building blocks that you manipulate in the Workflow Designer (if using Visual Studio) or SharePoint Designer workflow design surface (or Visio, but more about that later). The building blocks themselves are the visual workflow design objects in the designer toolbox—stages, conditions, actions, events, and so on. The set of tools in the respective toolboxes (Visual Studio or SharePoint Designer) differs somewhat, but the concept of the declarative workflow remains the same.

Entscheidungsbaum: SharePoint Designer im Vergleich zu Visual StudioDecision tree: SharePoint Designer vs. Visual Studio

Zu den größten Vorteilen des Workflowframeworks in SharePoint zählt die Benutzerfreundlichkeit, die es Information Workern erlaubt, mithilfe der codefreien Umgebung von SharePoint Designer umfangreiche und leistungsfähige Workflows zu erstellen. Darüber hinaus bietet eine deklarative Erstellungsumgebung wie Visual Studio ein hohes Maß an Flexibilität und Anpassung.Among the greatest advantages of the workflow framework in SharePoint is the ease with which information workers can use the no-code environment of SharePoint Designer to create rich and powerful workflows. Additionally, a high degree of flexibility and customization is available in a declarative authoring environment such as Visual Studio.

Beide dieser Workflowerstellungsumgebungen, SharePoint Designer und Visual Studio, sind mit spezifischen Vor- und Nachteilen verbunden. In diesem Abschnitt erfahren Sie, wie Sie herausfinden, welche Erstellungsumgebung für Ihre Anforderungen im Hinblick auf die Workflowentwicklung am besten geeignet ist.Both of these workflow authoring environments—SharePoint Designer and Visual Studio—offer specific advantages and disadvantages. In this section, we explore how to determine which authoring environment best suits your workflow development needs.

Verwenden von SharePoint DesignerUsing SharePoint Designer

  • Zielgruppe: Information Worker, Geschäftsanalysten, SharePoint-EntwicklerTarget users: Information workers, business analysts, SharePoint developers.

  • Schwierigkeitsstufe: Gute Kenntnisse im Umgang mit SharePoint Designer, einschließlich der zentralen Workflowkomponenten wie Stufen, Gates, Aktionen, Bedingungen und SchleifenDifficulty level: Familiarity with SharePoint Designer, including the core workflow components, such as stages, gates, actions, conditions, and loops.

Mit SharePoint Designer können Benutzer mithilfe eines codefreien, textbasierten Entwurfstools einen Workflow erstellen, der mit einer Liste, Bibliothek oder Website verknüpft ist. Sie können auch die neue visuelle Entwurfsumgebung verwenden, in der grafische Elemente so auf einer Entwurfsoberfläche angeordnet sind, dass sie den logischen Ablauf eines Geschäftsprozesses darstellen. SharePoint Designer bietet unvergleichliche Funktionen, um technisch wenig versierten Benutzern die schnelle Entwicklung von Workflows zu ermöglichen.With SharePoint Designer, users can create a workflow that is attached to a list, library, or site using a no-code, text-based designer. Or, they can use the new visual design environment in which graphical elements are arranged on a design surface to represent the logical flow of a business process. SharePoint Designer excels at enabling rapid workflow development by non-technical workers.

Verwenden von Visual StudioUsing Visual Studio

  • Zielgruppe: Softwareentwickler mit mittleren oder erweiterten Kenntnissen.Target users: Intermediate or advanced software developers.

  • Schwierigkeitsstufe: Gute Kenntnisse im Umgang mit Visual Studio, einschließlich Konzepten der Softwareentwicklung wie Ereignisempfänger, Verpackung und Bereitstellung und SicherheitDifficulty level: Familiarity with Visual Studio, including software development concepts such as event receivers, packaging and deployment, and security.

Die Workflowerstellung in Visual Studio bietet die Flexibilität, Workflows zur Unterstützung quasi jedes Geschäftsprozesses zu erstellen, unabhängig von dessen Komplexität, und erlaubt das Debuggen und Wiederverwenden von Workflowdefinitionen. Der vielleicht wichtigste Punkt ist, dass Visual Studio Entwicklern erlaubt, SharePoint-Workflows als Teil einer umfassenderen SharePoint-Lösung oder SharePoint-Add-In einzubinden.Authoring workflows in Visual Studio provides flexibility to create workflows to support virtually any business process, regardless of its complexity, and allows debugging and reuse of workflow definitions. Perhaps most important, Visual Studio lets developers include SharePoint workflows as part of a broader SharePoint solution or SharePoint Add-in.

Visual Studio erlaubt Entwicklern die Erstellung benutzerdefinierter Aktionen, die von SharePoint Designer verwendet werden, und stellt die Mittel zur Ausführung benutzerdefinierter Logik bereit. Mit Visual Studio können Entwickler auch Workflowvorlagen erstellen, die auf mehreren Websites bereitgestellt werden können.Visual Studio enables developers to create custom actions for consumption by SharePoint Designer, and provides the means to execute custom logic. With Visual Studio, developers can also create workflow templates, which can be deployed to multiple sites.

Vergleich zwischen SharePoint Designer und Visual StudioComparing SharePoint Designer with Visual Studio

In der folgenden Tabelle werden die Features und Anforderungen für die Verwendung von SharePoint Designer und Visual Studio zur Erstellung von SharePoint-Workflows gegenübergestellt.The following table provides a side-by-side comparison of the features and requirements for using SharePoint Designer and Visual Studio to create SharePoint workflows.

Tabelle 1. Vergleich von Tools zur WorkflowerstellungTable 1. Workflow authoring tool comparison

Feature/AnforderungFeature / Requirement SharePoint DesignerSharePoint Designer Visual StudioVisual Studio
Erlaubt schnelle WorkflowentwicklungAllows rapid workflow development
JaYes
JaYes
Erlaubt Wiederverwendung von WorkflowsEnables reuse of workflows
Ein Workflow kann nur von der Liste oder Bibliothek verwendet werden, in der er entwickelt wurde. SharePoint Designer bietet allerdings wiederverwendbare Workflows, die auf der gleichen Website mehrmals verwendet werden können.A workflow can be used only by the list or library on which it was developed. However, SharePoint Designer provides reusable workflows that can be used multiple times within the same site.
Ein Workflow kann als Vorlage geschrieben werden, sodass er nach der Bereitstellung wiederverwendet und einer Liste oder Bibliothek zugeordnet werden kann.A workflow can be written as a template so that after it is deployed, it can be reused and associated with any list or library.
Erlaubt Ihnen, einen Workflow als Teil einer SharePoint-Lösung oder SharePoint-Add-In einzubindenAllows you to include a workflow as part of a SharePoint solution or SharePoint Add-in
NeinNo
JaYes
Erlaubt Ihnen, benutzerdefinierte Aktionen zu erstellenAllows you to create custom actions
Nein. Allerdings kann SharePoint Designer benutzerdefinierte Aktionen verwenden und implementieren, die mithilfe von Visual Studio erstellt und bereitgestellt werden.No. However, SharePoint Designer can consume and implement custom actions that are created and deployed by using Visual Studio.
Ja. Beachten Sie allerdings, dass in Visual Studio die zugrunde liegenden Aktivitäten, nicht die entsprechenden Aktionen, verwendet werden.Yes. However, be aware that in Visual Studio, the underlying activities, not their corresponding actions, are used.
Erlaubt Ihnen, benutzerdefinierten Code zu schreibenAllows you to write custom code
NeinNo
NeinNo
Hinweis: Dies ist anders als bei früheren Versionen.Note: This is changed from previous versions. In SharePoint sind Workflows nur deklarativ, und Visual Studio benötigt für die Workflowentwicklung die visuelle Designüberfläche.In SharePoint, workflows are declarative only and Visual Studio relies on the visual design surface for workflow development.
Visio Professional kann zum Erstellen der Workflowlogik verwendet werdenCan use Visio Professional to create workflow logic
JaYes
NeinNo
Bereitstellung)Deployment
Werden automatisch in der Liste, Bibliothek oder Website bereitgestellt, in der sie erstellt wurdenDeployed automatically to list, library, or site on which they were created.
Erstellen einer SharePoint-Lösungspaketdatei (.wsp) und Bereitstellen des Lösungspakets auf der Website (SPWeb)Create a SharePoint solution package (.wsp) file and deploy the solution package to the site (SPWeb).
Veröffentlichen per Mausklick für Workflows verfügbarOne-click publishing available for workflows
JaYes
JaYes
Workflows können verpackt und auf einem Remoteserver bereitgestellt werdenWorkflows can be packaged and deployed to a remote server
JaYes
JaYes
DebuggingDebugging
Kein Debuggen möglich.Cannot be debugged.
Workflow kann mithilfe von Visual Studio debuggt werden.Workflow can be debugged by using Visual Studio.
Kann nur Aktionen verwenden, die vom Websiteadministrator genehmigt wurdenCan use only actions that are approved by site administrator
JaYes
JaYes
Hinweis: Dies ist anders als bei früheren Versionen.Note: This is changed from previous versions. Zuvor waren Workflows und Aktionen, die mit Visual Studio erstellt wurden, codebasiert und wurden im Farmbereich bereitgestellt, sodass keine Administratorgenehmigung erforderlich war.Previously, workflows and actions that were authored by using Visual Studio were code-based and deployed at the farm scope, so administrator approval was not required.

Entwickeln von Workflows mit Visual StudioDeveloping workflows using Visual Studio

Anders als in früheren Versionen sind Workflows in SharePoint vollständig deklarativ. Visual Studio, das nun auf Windows Workflow Foundation 4 basiert, bietet eine visuelle Workflow-Designeroberfläche, mit der Sie benutzerdefinierte Workflows, Workflowvorlagen, Formulare und benutzerdefinierte Workflowaktivitäten vollständig in der Designerumgebung erstellen können. Ihr Workflow wird dann verpackt und als ein SharePoint-Feature bereitgestellt. Informationen zum Verpacken von Features finden Sie unter Workflowentwicklung in Visual Studio.Unlike earlier versions, workflows in SharePoint are entirely declarative. Built now on Windows Workflow Foundation 4, Visual Studio provides a visual workflow designer surface that lets you create custom workflows, workflow templates, forms, and custom workflow activities entirely in the designer environment. Your workflow is then packaged and deployed as a SharePoint Feature. For information about Feature packaging, see Using Features in SharePoint Foundation.

Die vielleicht wichtigste Änderung für Visual Studio-Entwickler ist, dass benutzerdefinierte Workflows nicht mehr als .NET Framework-Assemblys zusammengestellt und bereitgestellt werden. Darüber hinaus verwendet SharePoint keine Microsoft InfoPath-Formulare mehr; stattdessen werden zur Formularerstellung Microsoft ASP.NET-Formulare benötigt.Perhaps the most significant change for Visual Studio developers is that custom workflows are no longer compiled and deployed as .NET Framework assemblies. Furthermore, SharePoint no longer uses Microsoft InfoPath forms; instead, forms generation relies on Microsoft ASP.NET forms.

Außerdem wurden die Visual Studio-Workflowprojektvorlagen geändert. Während früher Vorlagen für Zustandsautomat- und sequenzielle Workflows bereitgestellt wurden, ist diese Unterscheidung nun nicht mehr relevant. Stattdessen stehen im Visual Studio-Build auf Ihrem virtuelle Computer Visual Studio-Projektvorlagen zur Verfügung.Finally, the Visual Studio workflow project templates have changed. Whereas formerly templates for state machine and sequential workflows were provided, these distinctions are no longer meaningful. Rather, Visual Studio project templates are available in the Visual Studio build provided on your virtual machine (VM).

Aktivieren von lokalem Workflow-DebuggenEnabling on-premises workflow debugging

Um lokale Workflows in Visual Studio zu debuggen, müssen Sie den Workflow-Manager-Tools vorübergehend Zugriff auf Ihr System über die Firewall erlauben.To debug on-premises workflows in Visual Studio, you need to temporarily allow the Workflow Manager Tools to access your system through the firewall.

  1. Wählen Sie in der Systemsteuerung System und Sicherheit, Windows-Firewall aus.In Control Panel, choose System and Security, Windows Firewall.

  2. Wählen Sie in der Liste Startseite der Systemsteuerung den Link Erweiterte Einstellungen aus.In the Control Panel Home list, choose the Advanced Settings link.

  3. Wählen Sie im linken Fenster von "Windows-Firewall" Eingehende Regeln aus.In the left pane of Windows Firewall, choose Inbound Rules.

  4. Wählen Sie in der Liste Eingehende Regeln Workflow Manager Tools 1.0 for Visual Studio 2012 - Test Service Host aus.In the Inbound Rules list, choose Workflow Manager Tools 1.0 for Visual Studio 2012 - Test Service Host.

  5. Wählen Sie in der Liste Aktionen Regel aktivieren aus.In the Actions list, choose Enable Rule.

  6. Wählen Sie auf der Eigenschaftenseite Ihres SharePoint-Projekts die Registerkarte SharePoint aus, und aktivieren Sie dann das Kontrollkästchen Workflow-Debugging aktivieren.On the properties page of your SharePoint project, choose the SharePoint tab, and then select the Enable Workflow debugging check box.

Debuggen von SharePoint Online-Workflows mit Visual StudioDebugging SharePoint Online workflows using Visual Studio

Führen Sie die folgenden Schritte durch, um SharePoint Online-Workflows in Visual Studio zu debuggen:To debug SharePoint Online workflows in Visual Studio, perform the following steps:

  1. Wenn sich Ihr Computer hinter einer Firewall befindet, müssen Sie je nach Netzwerktopologie Ihres Unternehmens möglicherweise einen Proxyclient (wie den Forefront Threat Management Gateway (TMG)-Client) installieren.If you're behind a firewall, you may need to install a proxy client (such as the Forefront Threat Management Gateway (TMG) Client), depending on your company's network topology.

  2. Registrieren Sie sich für ein Microsoft Azure-Konto, wenn Sie dies nicht bereits getan haben, und melden Sie sich dann bei diesem Konto an.Register for a Microsoft Azure account if you haven't already, and then sign into that account.

    Informationen dazu, wie Sie sich für ein Microsoft Azure-Konto registrieren, finden Sie unter Microsoft Azure.For information about how to register for a Microsoft Azure account, see Microsoft Azure.

  3. Erstellen Sie einen Microsoft Azure-Servicebus-Namespace, den Sie zum Debuggen von Remoteworkflows verwenden können. Sie können dies im Microsoft Azure-Verwaltungsportal tun.Create a Microsoft Azure Service Bus namespace, which you can use to debug remote workflows. You can do this on the Microsoft Azure management portal.

    Weitere Informationen zum Microsoft Azure Service Bus finden Sie unter Verwalten von Service Bus-Dienstnamespaces.For more information about the Microsoft Azure Service Bus, see Managing Service Bus Service Namespaces.

    Hinweis

    Das SharePoint Online-Workflowdebugging verwendet die Relay-Dienst-Komponente von Microsoft Azure Service Bus, sodass Ihnen die Nutzung von Service Bus berechnet wird.Note: SharePoint Online workflow debugging uses the Relay Service component of the Microsoft Azure Service Bus, so you'll be charged for using the Service Bus. Siehe Preise-FAQ zu Service Bus.See Service Bus Pricing FAQ. Sie erhalten in jedem Monat, in dem Sie Visual Studio Professional mit MSDN, Visual Studio Premium mit MSDN oder Visual Studio Ultimate mit MSDN abonnieren, kostenlosen Zugriff auf Microsoft Azure.You get free access to Microsoft Azure each month that you subscribe to Visual Studio Professional with MSDN, Visual Studio Premium with MSDN, or Visual Studio Ultimate with MSDN. Mit diesem Zugriff können Sie das Service Bus-Relay je nach MSDN-Abonnement 1.500, 3.000 oder 3.000 Stunden verwenden.With this access, you can use the Service Bus relay for 1,500, 3,000, or 3,000 hours, depending on your MSDN subscription. Siehe Begrenzte monatliche Nutzung von Microsoft Azure Services ohne Zusatzkosten.See Get some amount of Microsoft Azure Services each month at no additional charge.

  4. Wählen Sie in Microsoft Azure Ihren Service-Namespace, klicken Sie auf den Zugriffsschlüssel-Link und kopieren Sie dann den Text im Feld Verbindungszeichenfolge.In Microsoft Azure, choose your service namespace, choose the Access Key link, and then copy the text in the Connection String box.

  5. Wählen Sie auf der Eigenschaftenseite Ihres SharePoint-Add-In-Projekts die Registerkarte SharePoint aus, und aktivieren Sie dann das Kontrollkästchen Workflow-Debugging aktivieren.On the properties page of your SharePoint Add-in project, choose the SharePoint tab, and then select the Enable Workflow debugging check box.

    Sie müssen dieses Feature aktivieren, um Workflows in SharePoint Online zu debuggen. Diese Eigenschaft wird auf alle Ihre SharePoint-Projekte in Visual Studio angewendet. Visual Studio deaktiviert Workflow-Debugging automatisch, wenn Sie Ihre App zur Verteilung im Office Store verpacken.You must enable this feature to debug workflows in SharePoint Online. This property applies to all of your SharePoint projects in Visual Studio. Visual Studio automatically turns off workflow debugging if you package your app for distribution on the Office store.

  6. Aktivieren Sie das Kontrollkästchen Debugging über Microsoft Azure Service Bus aktivieren. Fügen Sie dann im Textfeld Verbindungszeichenfolge für Microsoft Azure Service Bus die kopierte Verbindungszeichenfolge ein.Select the Enable debugging via Microsoft Azure Service Bus check box. Then, in the Microsoft Azure Service Bus connection string box, paste the connection string that you copied.

Nachdem Sie Workflow-Debugging aktualisiert und eine gültige Verbindungszeichenfolge für Microsoft Azure Service Bus eingegeben haben, können Sie SharePoint Online-Workflows debuggen.After you enable workflow debugging and provide a valid connection string for the Microsoft Azure Service Bus, you can debug SharePoint Online workflows.

Hinweis

Wenn Sie Workflow-Debugging nicht deaktiviert haben und nicht jedes Mal eine Benachrichtigung erhalten möchten, wenn Ihr Projekt einen Workflow enthält, deaktivieren Sie das Kontrollkästchen Mich benachrichtigen, wenn Microsoft Azure Service Bus-Debugging nicht konfiguriert ist.If you haven't disabled workflow debugging and don't want to receive a notification whenever your project contains a workflow, clear the Notify me if Microsoft Azure Service Bus debugging is not configured check box.

Siehe auchSee also

Die Entwicklung von SharePoint-Workflows bleibt für den Visual Studio-Entwickler größteils unverändert. Die wichtigsten Abschnitte der Dokumentation für SharePoint 2010 sind weiterhin relevant:A great deal of developing SharePoint workflows remains unchanged for the Visual Studio developer. The key sections of the documentation for SharePoint 2010 remain relevant: