在您的用戶端應用程式中使用 XRM 工具一般登入控制項
發行︰ 2017年1月
適用於: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online
Microsoft Dynamics 365 SDK 提供 Microsoft Visual Studio 的範本,讓您在用戶端應用程式中使用一般登入控制項。Dynamics 365 驗證程式碼、認證儲存與擷取以及診斷記錄已內建於範本,讓您可以快速地在 Dynamics 365 的 Windows 用戶端應用程式中運用這些功能。 一般登入控制項是 Microsoft.Xrm.Tooling.CrmConnectControl 的實作,這個控制項與下圖類似。
本主題內容
先決條件
使用一般登入控制項範本,建立 WPF 應用程式
在您現有的 WPF 應用程式中新增一般登入控制項範本
先決條件
.NET Framework 4.5.2
Microsoft Visual Studio 2012, Visual Studio 2013 或 Visual Studio 2015
Visual Studio 2012、Visual Studio 2013 或 Visual Studio 2015 的 Nuget 套件管理員
連線至網際網路,以便在使用專案範本時下載或還原所需的 Nuget 套件。
包含一般登入控制項範本的 Visual Studio 的 Microsoft Dynamics 365 SDK 範本。 您可以用下列其中一個方式取得它:
從 Visual Studio 組件庫下載 CRM SDK 範本,然後按兩下 CRMSDKTemplates.vsix 檔案,將範本安裝在 Visual Studio 中。
下載並解壓縮 Dynamics 365 SDK 套件。 範本檔案 CRMSDKTemplates.vsix 位於 SDK\Templates 資料夾中。 按兩下 CRMSDKTemplates.vsix 檔案,將範本安裝在 Visual Studio 中。
使用一般登入控制項範本,建立 WPF 應用程式
在此提供一個快速建立 Windows Presentation Foundation (WPF) 應用程式的方法,來利用一般登入控制項和基準認證代碼、驗證儲存和重複使用,以及的預設追蹤和紀錄。
啟動 Microsoft Visual Studio 並建立新的專案。
在 [新增專案] 對話方塊:
在已安裝範本的清單中,展開 [Visual C#] 並選擇 [Dynamics 365 SDK 範本]。
確定已選取 .NET Framework 4.5.2。
選取 [Dynamics 365 的 WPF 應用程式]。
指定專案的名稱和位置,並按一下 [確定]。
若要測試專案:
儲存專案,並按下 F5 或按一下 [偵錯] > [開始偵錯] 以驗證專案是否編譯成功。 編譯成功時,您將會看到包含 [登入 Dynamics 365] 按鈕的 MainWindow。 按一下按鈕以顯示一般登入控制項。
提供您的認證以連線至 Dynamics 365,然後按一下 [登入],來測試驗證功能。 將會有訊息顯示您的 Dynamics 365 連線狀態。
如需使用一般登入控制項範本連線至 Dynamics 365 和執行各種作業的範例,請參閱範例:在 XRM 工具 API 的快速開始。
在您現有的 WPF 應用程式中新增一般登入控制項範本
如果您已經有 WPF 用戶端應用程式,就可以輕易地將一般的登入控制項範本加入至其中,利用一致的 Dynamics 365 登入體驗和驗證基礎程式碼、認證儲存和重複使用,以及預設追蹤或記錄。 在此情況下,您必須在現有用戶端應用程式的使用者介面中建立呼叫一般登入控制項的控制項,具現化 Dynamics 365 連線物件執行個體,然後使用連線物件在 Dynamics 365 中執行各種作業。
在 Visual Studio 中開啟現有的 WPF 應用程式專案。 在這個範例中,假設 WPF 應用程式專案的名稱為 SampleWPFApp。
在您的專案中新增一般登入控制項範本。
在 [方案總管] 窗格中,以滑鼠右鍵按一下專案名稱,並按一下 [加入] > [新項目]。
在 [加入新項目] 對話方塊的已安裝範本清單中,展開 [Visual C#],然後選擇 [Dynamics 365 SDK 範本]。 按一下 [WPF 應用程式 Dynamics 365 登入表單],然後按一下 [確定]。
新增的 CrmLoginForm1.xaml 登入控制項會顯示在 XAML 設計工具區域。 如果沒有顯示,請在 [方案總管] 窗格中,按兩下 CrmLoginForm1.xaml 檔案。
您必須立即從您的應用程式中呼叫新加入的登入控制項。 若要這麼做,請在 MainWindow.xaml 檔案中新增 [按鈕] 控制項,並分別將名稱和內容設定為 [btnSignIn] 和 [登入 Dynamics 365]。
按兩下按鈕,在 MainWindow.xaml.cs 檔案中新增 [btnSignIn] 按鈕的滑鼠點選事件程式碼。
在 [btnSignIn] 按鈕的滑鼠點選事件中新增下列範例碼以呼叫 CrmLoginForm1 控制項,並建立 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"); }
在按鈕滑鼠點選事件下面新增 ctrl_ConnectionToCrmCompleted 事件的定義:
private void ctrl_ConnectionToCrmCompleted(object sender, EventArgs e) { if (sender is CRMLoginForm1) { this.Dispatcher.Invoke(() => { ((CRMLoginForm1)sender).Close(); }); } }
在前面兩個步驟中新增程式碼後,您的 MainWindow.xaml.cs 檔案看起來像這樣:
若要測試專案:
儲存專案,並按下 F5 或按一下 [偵錯] > [開始偵錯] 以驗證專案是否編譯成功。 編譯成功時,您將會看到包含新的 [登入 Dynamics 365] 按鈕的 MainWindow。 按一下以顯示一般登入控制項。
提供您的認證以連線至 Dynamics 365,然後按一下 [登入],來測試驗證功能。 如果成功,就會出現訊息,顯示您連線到的版本和組織名稱。 按一下 [確定] 關閉訊息。
如果再按一次 [登入 Dynamics 365],應用程式將會提示您選擇上次登入活動儲存的認證,或是重新輸入新的認證。
另請參閱
範例:在 XRM 工具 API 的快速開始
使用 XRM 工具,建立 Windows 用戶端應用程式
Microsoft Dynamics 365
© 2017 Microsoft. 著作權所有,並保留一切權利。 著作權