Creare le classi di entità con associazione anticipata con lo strumento di generazione del codice (CrmSvcUtil.exe)

 

Data di pubblicazione: novembre 2016

Si applica a: Dynamics CRM 2015

CrmSvcUtil.exe è uno strumento per la generazione di codice della riga di comando da utilizzare con Aggiornamento di Microsoft Dynamics CRM 2015 e Microsoft Dynamics CRM Online 2015. Questo strumento genera classi .NET Framework con associazione anticipata che rappresentano il modello dei dati di entità utilizzato da Microsoft Dynamics 365. Questo strumento è disponibile nel pacchetto SDK, nella cartella SDK\Bin.Scarica il pacchetto SDK di Microsoft Dynamics CRM.

In questo argomento

Informazioni sullo strumento di generazione del codice

Eseguire lo strumento di generazione del codice

Parametri

Esempio di utilizzo

Utilizzare il file di configurazione

Abilitare la traccia

Informazioni sullo strumento di generazione del codice

Lo strumento CrmSvcUtil.exe crea un file di output di Microsoft Visual C# o Microsoft Visual Basic .NET contenente le classi fortemente tipizzate per le entità nell'organizzazione. Questo include le entità e gli attributi personalizzati. Questo file di output contiene una classe per ogni entità che fornisce un'associazione anticipata e supporto IntelliSense in Microsoft Visual Studio per consentire all'utente di scrivere il codice personalizzato. Le classi generate sono classi parziali che possono essere estese con regole business personalizzate in file distinti. È inoltre possibile creare estensioni a questo strumento. Per ulteriori informazioni, vedere Creare le estensioni per lo strumento di generazione del codice.

Tale strumento può essere inoltre utilizzato per generare una classe derivata dalla classe OrganizationServiceContext che agisce come contenitore di entità nel modello di dati dell'entità. Questo contesto di servizio offre le funzionalità per la registrazione delle modifiche e la gestione delle identità, della concorrenza e delle relazioni. Questa classe espone inoltre un metodo SaveChanges che scrive, inserisce, aggiorna ed elimina i record in Microsoft Dynamics 365. Per ulteriori informazioni, vedere Utilizzare la classe OrganizationServiceContext.

Lo strumento di generazione del codice utilizza diversi parametri che determinano i contenuti del file creato. È possibile passare i parametri dalla riga di comando quando si esegue lo strumento o in un file di configurazione dell'applicazione connesso a .NET.

Le classi create dallo strumento di generazione del codice sono progettate per essere generate in una raccolta delle classi a cui i progetti che utilizzano Microsoft Dynamics 365 possono fare riferimento. Dopo aver generato il file di classe utilizzando lo strumento, è necessario aggiungere il file al progetto Visual Studio. È inoltre necessario aggiungere i riferimenti ad alcuni assembly da cui dipendono le classi generate.

Vengono di seguito elencati gli assembly a cui il progetto deve fare riferimento quando si utilizza il file di codice generato.

  • Microsoft.Crm.Sdk.Proxy.dll

  • Microsoft.Xrm.Sdk.dll

Questi assembly sono disponibili nella cartella SDK\Bin di SDK.Scarica il pacchetto SDK di Microsoft Dynamics CRM.

Eseguire lo strumento di generazione del codice

Eseguire lo strumento CrmSvcUtil.exe dalla cartella SDK\Bin. Se si esegue tale strumento da un'altra posizione della cartella, verificare che una copia dell'assembly Microsoft.Xrm.Sdk.dll si trovi nella stessa cartella.

Nell'esempio seguente viene indicato il formato per eseguire lo strumento da riga di comando per un'installazione locale di Microsoft Dynamics 365. I valori dei parametri per l'installazione devono essere specificati dall'utente.

CrmSvcUtil.exe /url:http://<serverName>/<organizationName>/XRMServices/2011/Organization.svc    /out:<outputFilename>.cs /username:<username> /password:<password> /domain:<domainName>    /namespace:<outputNamespace> /serviceContextName:<serviceContextName>

Nell'esempio seguente viene illustrato il formato per eseguire lo strumento da riga di comando con Microsoft Dynamics CRM Online. I valori dei parametri appropriati per l'account e il server devono essere specificati dall'utente.

CrmSvcUtil.exe /url:https://<organizationUrlName>.api.crm.dynamics.com/XRMServices/2011/Organization.svc    /out:<outputFilename>.cs /username:<username> /password:<password>     /namespace:<outputNamespace> /serviceContextName:<serviceContextName>

Per il parametro username, digitare il nome utente utilizzato per accedere a Account Microsoft o a Microsoft Office 365. Per trovare l'URL corretto nell'applicazione Web, selezionare Impostazioni, spostarsi in Personalizzazioni e quindi scegliere Risorse per sviluppatori. L'URL è indicato in Servizio organizzazione.

Per elencare i parametri della riga di comando supportati, utilizzare il comando seguente.

CrmSvcUtil.exe /?

Durante l'esecuzione dello strumento per Microsoft Dynamics CRM Online tramite il provider di identità di Account Microsoft, non è più necessario immettere i parametri devicepassword e deviceid dalla riga di comando. Lo strumento registra il dispositivo automaticamente. Tuttavia, è possibile registrare manualmente il dispositivo e ottenere valori per questi parametri innanzitutto compilando ed eseguendo l'esempio di codice DeviceRegistration come descritto di seguito.

Generare l'ID e la password del singolo dispositivo

  1. Aprire e creare il progetto DeviceRegistration: SDK\Tools\DeviceRegistration\DeviceRegistration.csproj.

  2. Eseguire il file eseguibile dalla riga di comando. Per registrare il proprio dispositivo, impostare il parametro /operation su Register.

    C:\deviceregistration.exe /operation:Register
    
  3. Copiare l'ID e la password del dispositivo visualizzati e utilizzarli come valori del parametro deviceid e devicepassword quando si esegue lo strumento CrmSvcUtil.

Parametri

Nella tabella seguente sono elencati i parametri dello strumento di generazione del codice e viene fornita una breve descrizione del loro utilizzo.

Parametro

Collegamento

Descrizione

Obbligatorio

deviceid

di

ID dispositivo utilizzato quando si esegue la connessione al server Online per l'autenticazione. Richiesto solo se l'ID del dispositivo non è stato archiviato nel disco nella cartella %USERPROFILE%\LiveDeviceID. Utilizzato solo con il provider di identità di Account Microsoft.

Falso

devicepassword

dp

Password del dispositivo utilizzata quando si esegue la connessione al server Online per l'autenticazione. Richiesto solo se la password del dispositivo non è stata archiviata nel disco nella cartella %USERPROFILE%\LiveDeviceID. Utilizzato solo con il provider di identità di Account Microsoft.

Falso

domain

d

Il dominio per l'autenticazione al momento della connessione al server.

Falso

url

L'URL per il servizio di organizzazione.

Vero

out

o

Il nome del file per il codice generato.

Vero

language

l

Il linguaggio in cui generare il codice. Può essere “CS” o “VB”. Il valore predefinito è “CS”.

Falso

namespace

n

lo spazio dei nomi per il codice generato. L'impostazione predefinita è lo spazio dei nomi globale.

Falso

username

u

Il nome utente da utilizzare quando si esegue la connessione al server per l'autenticazione.

Falso

password

p

La password da utilizzare quando si esegue la connessione al server per l'autenticazione.

Falso

servicecontextname

Il nome della classe di contesto del servizio di organizzazione generata. Se non viene specificato alcun valore, non viene creato nessun contesto di servizio.

Falso

help

?

Mostra informazioni di utilizzo.

Falso

nologo

Eliminare lo striscione al runtime.

Falso

generateActions

Generare le classi di richiesta e di risposta per le azioni.

Esempio di utilizzo

In questo esempio viene illustrato come utilizzare lo strumento di generazione del codice dalla riga di comando per ogni tipo di distribuzione. Si noti che il nome utente e la password sono parametri facoltativi. Se le credenziali per il server Microsoft Dynamics 365 di destinazione vengono archiviate nell'insieme di credenziali Windows, non è necessaria l'esecuzione dello strumento di generazione del codice.

Autenticazione richieste - Active Directory

Nel seguente esempio viene illustrato come eseguire lo strumento di generazione del codice utilizzando l'autenticazione delle richieste in Active Directory. Si noti l'utilizzo di HTTPS perché questo server di esempio utilizza SSL (Secure Sockets Layer).

CrmSvcUtil.exe /url:https://myport:555/MyOrg/XRMServices/2011/Organization.svc /out:GeneratedCode.cs
   /username:administrator /password:password

Microsoft Dynamics CRM Online

Nel seguente esempio viene illustrato come eseguire lo strumento di generazione del codice di Microsoft Dynamics CRM Online. Il primo esempio è relativo al provider di identità di Account Microsoft e il secondo è relativo al provider di identità di Office 365.

CrmSvcUtil.exe /url:https://myorg.api.crm.dynamics.com/XRMServices/2011/Organization.svc    /out:GeneratedCode.cs /username:"myname@live.com" /password:"myp@ssword!" 

CrmSvcUtil.exe /url:https://myorg.api.crm.dynamics.com/XRMServices/2011/Organization.svc    /out:GeneratedCode.cs /username:"myname@myorg.onmicrosoft.com" /password:"myp@ssword!" 

Autenticazione richieste - IFD

Nel seguente esempio viene illustrato come eseguire lo strumento di generazione del codice utilizzando l'autenticazione delle richieste.

CrmSvcUtil.exe /url:https://myorg.crm.com:555/XRMServices/2011/Organization.svc     /out:GeneratedCode.cs /username:administrator /password:p@ssword! 

Utilizzare il file di configurazione

Il file di configurazione di CrmSvcUtil.exe.config deve essere impostato nella stessa cartella dello strumento CrmSvcUtil.exe. Il file di configurazione utilizza le coppie chiave/valore standard nella sezione appSettings. Tuttavia, se si immette un valore nella riga di comando, tale valore verrà utilizzato al posto di quello nel file di configurazione. Tutte le coppie chiave/valori rilevate nel file di configurazione dell'applicazione che non corrispondono ai parametri previsti verranno ignorate.

Non includere i parametri namespace e url nel file di configurazione. Queste devono essere inserite dalla riga di comando quando viene eseguito lo strumento CrmSvcUtil.exe.

Nel seguenti esempio viene illustrato come configurare il file di output e i parametri del nome di dominio nel file di configurazione dell'applicazione utilizzando i tasti di scelta rapida.

<appSettings>    <add key="o" value="CrmProxy.cs"/>    <add key="d" value="mydomain"/></appSettings>

Abilitare la traccia

Per abilitare la traccia durante l'esecuzione dello strumento, aggiungi le righe seguenti nel file di configurazione:

<system.diagnostics> 
   <trace autoflush="false" indentsize="4"> 
      <listeners> 
         <add name="configConsoleListener" type="System.Diagnostics.ConsoleTraceListener"> 
            <filter type="System.Diagnostics.EventTypeFilter" initializeData="Error" /> 
         </add> 
      </listeners> 
   </trace> 
</system.diagnostics>

Vedere anche

Strumenti di sviluppo
Visualizzazione dei metadati per l'organizzazione
Creare le estensioni per lo strumento di generazione del codice
Utilizzare le classi dell'identità con associazione anticipata per la creazione, l'aggiornamento e l'eliminazione
Suggerimenti per la risoluzione dei problemi
Eseguire un semplice programma tramite i servizi Web di Microsoft Dynamics CRM 2015

© 2017 Microsoft. Tutti i diritti sono riservati. Copyright