Verwenden des allgemeinen Anmeldungssteuerelements der XRM-Tools in Ihren Client-Anwendungen
Veröffentlicht: Januar 2017
Gilt für: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
Das Microsoft Dynamics 365 SDK stellt Ihnen eine Vorlage für Microsoft Visual Studio bereit, mit dessen Hilfe Sie das allgemeine Anmeldungssteuerelement in den Client-Anwendungen verwenden können. Der Code für die Dynamics 365-Authentifizierung, das Speichern und Abrufen von Anmeldeinformationen und das diagnostische Protokollieren, sind in der Vorlage integriert, so dass Sie diese Funktionen in Ihren Windows-Client-Anwendungen für Dynamics 365 schnell nutzen können. Das allgemeine Anmeldungssteuerelement ist eine Implementierung des Microsoft.Xrm.Tooling.CrmConnectControl, wobei das Steuerelement dem folgenden Bild gleicht.
In diesem Thema
Voraussetzungen
Erstellen einer WPF-Anwendung mithilfe der allgemeinen Anmeldungssteuerelement-Vorlage
Hinzufügen der allgemeinen Anmeldungssteuerelement-Vorlage zur vorhandenen WPF-Anwendung
Voraussetzungen
.NET Framework 4.5.2
Microsoft Visual Studio 2012, Visual Studio 2013 oder Visual Studio 2015
Nuget Package Manager für Visual Studio 2012, Visual Studio 2013 oder Visual Studio 2015
Mit dem Internet verbunden, sodass Sie die erforderlichen Nuget-Pakete herunterzuladen und wiederherstellen können, während Sie die Projektvorlage verwenden.
Microsoft Dynamics 365 SDK-Vorlagen für Visual Studio, das die allgemeine Anmeldungssteuerelement-Vorlage enthält. Sie können Sie auf eine der folgenden Weisen erhalten:
Laden Suie die CRM SDK-Vorlage aus der Visual Studio-Galerie heunter und doppelklicken Sie auf die CRMSDKTemplates.vsix-Datei, um die Vorlage in Visual Studio zu installieren.
Laden Sie herunter und extrahieren Sie das Dynamics 365 SDK-Paket. Die Vorlagendatei CRMSDKTemplates.vsix ist standardmäßig im SDK\Templates-Ordner gespeichert. Doppelklicken Sie zur Installation der Vorlage in Visual Studio auf die Datei CRMSDKTemplates.vsix.
Erstellen einer WPF-Anwendung mithilfe der allgemeinen Anmeldungssteuerelement-Vorlage
Dies ist eine schnelle Methode zur Erstellung einer Windows Presentation Foundation (WPF)-Anwendung, die das allgemeine Anmeldungssteuerelement und den zugrunde liegenden Code für die Authentifizierung und die erneute Verwendung sowie die Standard-Protokollierung und Nachverfolgung verwendet.
Starten Sie Microsoft Visual Studio und erstellen Sie ein neues Projekt.
Im Dialogfeld Neues Projekt:
Erweitern Sie in der Liste der installierten Vorlagen Visual C#, und wählen Sie Dynamics 365-SDK Vorlagen aus.
Sicherstellen, dass .NET Framework 4.5.2 ausgewählt ist.
Wählen Sie WPF-Anwendung für Dynamics 365 aus.
Geben Sie den Namen und den Standort des Projekts an, und klicken Sie auf OK.
So testen Sie das Projekt:
Speichern Sie das Projekt und drücken Sie F5, oder klicken Sie auf Debuggen > Debuggen starten, um zu überprüfen, ob das Projekt erfolgreich kompiliert wird. Bei erfolgreicher Kompilierung sehen Sie ein MainWindow mit der Schaltfläche Anmelden beim Dynamics 365. Klicken Sie auf die Schaltfläche, um das Anmeldungssteuerelement anzuzeigen.
Testen Sie die Authentifizierung, indem Sie Ihre Anmeldeinformationen zur Verbindung mit Dynamics 365 angeben, und klicken Sie dann auf Anmeldung. Eine Message zeigt Ihren Dynamics 365-Verbindungsstatus an.
Ein Beispiel, bei dem die Vorlage des allgemeinen Anmeldungssteuerelements verwendet wird, um eine Verbindung mit Dynamics 365 herzustellen und um unterschiedliche Vorgänge ausführen, finden Sie unter Beispiel: Schnellstart für XRM Tooling API.
Hinzufügen der allgemeinen Anmeldungssteuerelement-Vorlage zur vorhandenen WPF-Anwendung
Wenn Sie bereits eine WPF-Client-Anwendung haben, können Sie ihr die Vorlage des allgemeinen Anmeldungssteuerelements problemlos hinzufügen zur Nutzung der einheitlichen Anmeldungserfahrung und des zugrunde liegenden Codes für die Dynamics 365-Authentifizierung, das Speichern und die Wiederverwendung von Anmeldeinformationen und Speicher sowie die standardmäßige Rückverfolgung oder Protokollierung. In diesem Fall müssen Sie in der Benutzeroberfläche ein Steuerelement der vorhandenen Client-Anwendung erstellen, um das allgemeine Anmeldungssteuerelement aufzurufen, eine Instanz des Dynamics 365-Verbindungsobjekts zu instanziieren und anschließend das Verbindungsobjekt zu verwenden um verschiedene Vorgänge in Dynamics 365 auszuführen.
Öffnen Sie ein vorhandenes WPF-Anwendungsprojekt in Visual Studio. Für dieses Beispiel wird angenommen, dass der Name des WPF-Anwendungsprojekts SampleWPFApp ist.
Hinzufügen der allgemeinen Anmeldungssteuerelement-Vorlage zum Projekt
Klicken Sie im Projektmappen-Explorer-Bereich mit der rechten Maustaste auf den Projektnamen, und klicken Sie dann auf Hinzufügen > Neues Element hinzufügen.
Erweitern Sie im Dialogfeld Neues Element hinzufügen in der Liste der installierten Vorlagen Visual C#, und wählen Sie Dynamics 365 SDK-Vorlagen aus. Klicken Sie auf Dynamics 365-Anmeldungsformular für WPF-Anwendungen, und klicken Sie auf OK.
Das neu hinzugefügte CrmLoginForm1.xaml-Anmeldungssteuerelement wirds im XAML-Designerbreich angezeigt. Falls es nicht angezeigt wird, doppelklicken Sie auf die Datei CrmLoginForm1.xaml im Bereich Projektmappen-Explorer.
Sie müssen jetzt das neu hinzugefügte Anmeldungssteuerelement aus Ihrer Anwendung aufrufen. Starten Sie dazu ein Steuerelement Schaltfläche in der Datei MainWindow.xaml, und legen Sie den Namen und den Inhalt jeweils auf btnSignIn und Bei Dynamics 365 anmelden fest.
Doppelklicken Sie auf die Schaltfläche, um Code für das Klickereignis der Schaltfläche btnSignIn in der Datei MainWindow.xaml.cs hinzuzufügen.
Fügen Sie den folgenden Beispielcode im Klickereignis der Schaltfläche btnSignIn hinzu, um das Steuerelement CrmLoginForm1 aufzurufen, und erstellen Sie eine Instanz des Verbindungsobjekts Dynamics 365.
// Establish the Login control. CRMLoginForm1 ctrl = new CRMLoginForm1(); // Wire event to login response. ctrl.ConnectionToCrmCompleted += ctrl_ConnectionToCrmCompleted; // Show the login control. ctrl.ShowDialog(); // Handle the returned CRM connection object. // On successful connection, display the CRM version and connected org name if (ctrl.CrmConnectionMgr != null && ctrl.CrmConnectionMgr.CrmSvc != null && ctrl.CrmConnectionMgr.CrmSvc.IsReady) { MessageBox.Show("Connected to CRM! Version: " + ctrl.CrmConnectionMgr.CrmSvc.ConnectedOrgVersion.ToString() + " Org: " + ctrl.CrmConnectionMgr.CrmSvc.ConnectedOrgUniqueName, "Connection Status"); // Perform your actions here } else { MessageBox.Show("Cannot connect; try again!", "Connection Status"); }
Fügen Sie die Definition des Ereignisses ctrl_ConnectionToCrmCompleted unter dem Klickereignis der Schaltfläche hinzu:
private void ctrl_ConnectionToCrmCompleted(object sender, EventArgs e) { if (sender is CRMLoginForm1) { this.Dispatcher.Invoke(() => { ((CRMLoginForm1)sender).Close(); }); } }
So wird Ihre Datei MainWindow.xaml.cs angezeigt, nachdem Code von den vorherigen zwei Schritten hinzugefügt wurde:
So testen Sie das Projekt:
Speichern Sie das Projekt und drücken Sie F5, oder klicken Sie auf Debuggen > Debuggen starten, um zu überprüfen, ob das Projekt erfolgreich kompiliert wird. Bei erfolgreicher Kompilierung sehen Sie ein MainWindow mit der neuen Schaltfläche Bei Dynamics 365 anmelden. Klicken Sie darauf, um das Anmeldungssteuerelement anzuzeigen.
Testen Sie die Authentifizierung, indem Sie Ihre Anmeldeinformationen zur Verbindung mit Dynamics 365 angeben, und klicken Sie dann auf Anmeldung. Wenn erfolgreich, erscheint eine Message darüber, die den Namen der Version und der Organisation, mit der Sie verbunden sind, angibt. Klicken Sie auf OK, um die Message zu schließen.
Wenn Sie erneut auf Bei Dynamics 365 anmelden klicken, fordert die Anwendung Sie entweder dazu auf, die gespeicherten Anmeldeinformationen aus der letzten Anmeldeaktivität zu wählen oder die neuen Anmeldeinformationen erneut einzugeben.
Siehe auch
Beispiel: Schnellstart für XRM Tooling API
Erstellen von Windows-Client-Anwendungen mithilfe der XRM-Tools
Microsoft Dynamics 365
© 2017 Microsoft. Alle Rechte vorbehalten. Copyright