Condividi tramite


Utilizzare gli strumenti XRM per il controllo di accesso comune nelle applicazioni client

 

Data di pubblicazione: novembre 2016

Si applica a: Dynamics CRM 2015

Microsoft Dynamics CRM SDK offre un modello per Microsoft Visual Studio che consente di utilizzare il controllo di accesso comune nelle applicazioni client. Il codice per l'autenticazione di Dynamics 365, l'archiviazione e il recupero delle credenziali così come la registrazione diagnostica vengono generati nel modello rendendo possibile utilizzare velocemente queste funzionalità nelle applicazioni client di Windows per Dynamics 365. Il controllo di accesso comune è un'implementazione Microsoft.Xrm.Tooling.CrmConnectControl ed è simile a come mostrato nella seguente immagine.

Controllo accesso comune XRM Tooling

In questo argomento

Prerequisiti

Creare un'applicazione di WPF mediante il modello di controllo di accesso comune

Aggiungere un modello di controllo di accesso comune all'applicazione di WPF esistente

Prerequisiti

  • .NET Framework 4.5.2

  • Microsoft Visual Studio 2012 o Visual Studio 2013

  • Gestione pacchetti Nuget per Visual Studio 2012 o per Visual Studio 2013

  • Modelli di Microsoft Dynamics CRM SDK per Visual Studio che contengono il modello di controllo di accesso comune. È possibile ottenere il modello, in uno dei modi seguenti:

    • Scaricando il modello di Dynamics 365 SDK da Visual Studio Gallery e facendo doppio clic sul file CRMSDKTemplates.vsix per installare il modello in Visual Studio.

    • Scaricando ed estraendo il pacchetto Dynamics 365 SDK. Il file dei modelli CRMSDKTemplates.vsix è disponibile nella cartella SDK\Templates. Fare doppio clic sul file CRMSDKTemplates.vsix per installare il modello in Visual Studio.

Creare un'applicazione di WPF mediante il modello di controllo di accesso comune

Di seguito è riportata una procedura che consente di creare velocemente un'applicazione di Windows Presentation Foundation (WPF) che usa il controllo di accesso comune e il codice sottostante per l'autenticazione, l'archiviazione e il riutilizzo delle credenziali oltre che per l'analisi o la registrazione predefinite.

  1. Avviare Microsoft Visual Studio e creare un nuovo progetto.

  2. Nella finestra di dialogo Nuovo progetto:

    1. Nell'elenco dei modelli installati espandere Visual C# e selezionare Modelli CRM SDK.

    2. Verificare che .NET Framework 4.5.2 sia selezionato.

    3. Selezionare Applicazione di WPF per CRM.

    4. Specificare il nome e la posizione del progetto e fare clic su OK.

    Applicazione WPF per modelli CRM

  3. Per testare il progetto:

    1. Salvare il progetto e premere F5 oppure fare clic su Debug > Avvia debug per verificare che il progetto venga compilato correttamente. Quando la compilazione è completata correttamente, verrà visualizzato un MainWindow con il pulsante Esegui l'accesso a CRM. Fare clic sul pulsante per visualizzare il controllo di accesso comune.

    2. Testare l'autenticazione immettendo le credenziali per la connessione a Dynamics 365, quindi fare clic su Accedi. Viene visualizzato un messaggio con lo stato di connessione di Dynamics 365.

Per un esempio che utilizza il modello di controllo di accesso comune per la connessione a Dynamics 365 e per eseguire diverse operazioni, vedere Esempio: guida introduttiva per API degli strumenti XRM.

Nota

Il modello di applicazione WPF per CRM usa il file Microsoft.Xrm.Tooling.Ui.Styles.dll anziché il file Microsoft.Xrm.Tooling.Ui.Resources.dll per fornire risorse XAML al controllo degli accessi comune. Il file Microsoft.Xrm.Tooling.Ui.Re sources.dll è deprecato nella versione corrente e il file Microsoft.Xrm.Tooling.Ui.St yles.dll fornisce le stesse funzionalità di Microsoft.Xrm.Tooling.Ui.Resources.dll.

Aggiungere un modello di controllo di accesso comune all'applicazione di WPF esistente

Se già si dispone di un'applicazione client di WPF, è possibile aggiungere facilmente il modello di controllo di accesso comune per trarre vantaggio dall'esperienza di accesso uniforme e dal codice sottostante per l'autenticazione di Dynamics 365, oltre che dall'archiviazione e il riutilizzo delle credenziali e dalle funzioni di analisi o registrazione predefinite. In questo caso, è necessario creare un controllo nell'interfaccia utente dell'applicazione client esistente per chiamare il controllo di accesso comune, creare un'un'istanza dell'oggetto di connessione Dynamics 365 e quindi utilizzare l'oggetto di connessione per eseguire diverse operazioni in Dynamics 365.

  1. Aprire un progetto di applicazione di WPF esistente in Visual Studio. Per questo esempio, si supponga che il nome del progetto di applicazioni di WPF sia SampleWPFApp.

  2. Aggiungere un modello di controllo di accesso comune al progetto.

    1. Nel riquadro Esplora soluzioni fare clic con il pulsante destro del mouse sul nome del progetto, quindi fare clic su Aggiungi > Nuovo elemento.

    2. Nella finestra di dialogo Aggiungi nuovo elemento, dall'elenco dei modelli installati espandere Visual C# e selezionare Modelli CRM SDK. Fare clic su Modulo di accesso CRM per le applicazioni di WPF, quindi fare clic su OK.

      Aggiungere il modello di controllo di accesso comune

  3. Il controllo degli accessi CrmLoginForm1.xaml aggiunto viene visualizzato nell'area di progettazione XAML. In caso contrario, fare doppio clic sul file CrmLoginForm1.xaml in Esplora soluzioni.

    Verificare la corretta esecuzione del rendering del controllo di accesso

  4. Ora è necessario chiamare il controllo di accesso appena aggiunto dall'applicazione. A tale scopo, aggiungere un controllo Button nel file MainWindow.xaml, quindi impostare il nome e il contenuto in btnSignIn e in Esegui l'accesso a CRM rispettivamente.

    Aggiungere un controllo per chiamare il modulo di accesso

  5. Fare doppio clic sul pulsante per aggiungere il codice per l'evento Click del pulsante btnSignIn nel file MainWindow.xaml.cs.

  6. Aggiungere il seguente esempio di codice nell'evento Click del pulsante btnSignIn per chiamare il controllo CrmLoginForm1 e creare un'istanza dell'oggetto di connessione 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");
    }
    
  7. Aggiungere la definizione dell'evento ctrl_ConnectionToCrmCompleted sotto l'evento Click del pulsante:

    private void ctrl_ConnectionToCrmCompleted(object sender, EventArgs e)
    {
        if (sender is CRMLoginForm1)
        {
            this.Dispatcher.Invoke(() =>
            {
                ((CRMLoginForm1)sender).Close();
            });
        }
    }
    
  8. Questo è come il file MainWindow.xaml.cs viene visualizzato dopo l'aggiunta del codice eseguita nei due passaggi precedenti:

    Codice di esempio

  9. Per testare il progetto:

    1. Salvare il progetto e premere F5 oppure fare clic su Debug > Avvia debug per verificare che il progetto venga compilato correttamente. Quando la compilazione è completata correttamente, verrà visualizzato un MainWindow con il nuovo pulsante Esegui l'accesso a CRM. Fare clic sul pulsante per visualizzare il controllo di accesso comune.

    2. Testare l'autenticazione immettendo le credenziali per la connessione a Dynamics 365, quindi fare clic su Accedi. Se viene visualizzato correttamente, viene visualizzato un messaggio indicante la versione e il nome dell'organizzazione a cui si è connessi. Fare clic su OK per chiudere il messaggio.

      Risultati test di progetto

    3. Se si di nuovo fa clic su Esegui l'accesso a CRM, l'applicazione richiede di selezionare le credenziali salvate dell'ultima attività di accesso oppure sarà necessario immettere le credenziali nuovamente.

      Credenziali memorizzate

Vedere anche

Esempio: guida introduttiva per API degli strumenti XRM
Compilare applicazioni client di Windows tramite gli strumenti XRM

© 2017 Microsoft. Tutti i diritti sono riservati. Copyright