Condividi tramite


Procedura dettagliata: sviluppare un'applicazione console che si connette a Microsoft Dynamics CRM 2015 tramite le estensioni per sviluppatori

 

Data di pubblicazione: novembre 2016

Si applica a: Dynamics CRM 2015

La procedura dettagliata illustra come scrivere un'applicazione console semplice che si connette a Microsoft Dynamics CRM 2015 tramite le estensioni per gli sviluppatori e crea un record del contatto.

È possibile trovare il codice di esempio che tale procedura dettagliata produce nella cartella Walkthroughs\Portal\ConsoleAppWalkthrough.

In questo argomento

Generare tipi con associazione anticipata

Creare un nuovo progetto applicazione console in Visual Studio

Generare tipi con associazione anticipata

  1. Eseguire lo strumento CrmSvcUtil.exe con l'estensione “Microsoft.Xrm.Client.CodeGeneration” per generare le classi dell'entità e i contesti del servizio. Il seguente comando di esempio crea un file denominato Xrm.cs che punta a un'istanza di Microsoft Dynamics 365. Si noti che quando si esegue questo comando, il file Microsoft.Xrm.Client.CodeGeneration.dll deve trovarsi nella stessa directory del file CrmSvcUtil.exe o nella Global Assembly Cache del sistema. Il primo comando indicato è per un'organizzazione locale. Il secondo comando è per un'organizzazione CRM Online. Entrambi i comandi deve essere eseguita come singola riga di comando senza interruzioni di riga.

    CrmSvcUtil.exe
    /codeCustomization:"Microsoft.Xrm.Client.CodeGeneration.CodeCustomization, Microsoft.Xrm.Client.CodeGeneration"/out:Xrm.cs /url:http://<myserver>/<myorg>/XRMServices/2011/Organization.svc 
    /domain:<mydomain> /username:<myusername> /password:<mypassword> /namespace:Xrm /serviceContextName:XrmServiceContext
    
    CrmSvcUtil.exe
    /codeCustomization:"Microsoft.Xrm.Client.CodeGeneration.CodeCustomization, Microsoft.Xrm.Client.CodeGeneration"
    /out:Xrm.cs /url:https://<mydomain>.api.crm.dynamics.com/XRMServices/2011/Organization.svc
    /username:<myusername>@<mydomain>.onmicrosoft.com /password:<mypassword> /namespace:Xrm /serviceContextName:XrmServiceContext
    

    Suggerimento

    Lo strumento di CrmSvcUtil è disponibile nella cartella Bin del download di SDK o installando il pacchetto Microsoft.CrmSdk.CoreToolsNuGet.

Creare un nuovo progetto applicazione console in Visual Studio

  1. Creare un nuovo progetto applicazione console denominato "ConsoleAppWalkthrough". Se .NET Framework 4.5.2 non è già stato installato, è possibile ottenere il pacchetto per sviluppatori da Installare .NET Framework.

    Crea un progetto in Visual Studio

  2. Aggiungere i seguenti riferimenti dalla cartella SDK\bin. È possibile ignorare questo passaggio e il successivo semplicemente installando il pacchetto Microsoft.CrmSdk.ExtensionsNuGet.

    • AntiXSSLibrary.dll

    • Microsoft.Crm.Sdk.Proxy.dll

    • Microsoft.Xrm.Client.dll

    • Microsoft.Xrm.Portal.dll

    • Microsoft.Xrm.Portal.Files.dll

    • Microsoft.Xrm.Sdk.dll

  3. Aggiungere i seguenti riferimenti da .NET.

    • System.IdentityModel.dll

    • Microsoft.ServiceBus.dll

    • System.Data.Services.dll

    • System.Data.Services.Client.dll

    • System.Runtime.Serialization.dll

  4. Verificare che il progetto della console specifichi .NET Framework 4.5.2 come la versione di destinazione e non .NET Framework 4.5.2 Profile Client. Controllare le proprietà del progetto selezionando il progetto ConsoleAppWalkthrough in Esplora soluzioni e facendo clic su ALT-INVIO.

    Imposta framework di destinazione

  5. Fare clic con il pulsante destro del mouse sul progetto in Visual Studio, fare clic su Aggiungi e quindi su Elemento esistente.

  6. Selezionare il file "xrm.cs" creato quando sono stati generati i tipi con associazione anticipata.

  7. Fare clic con il pulsante destro del mouse sul progetto nuovamente, scegliere Aggiungi, quindi fare clic su Nuovo elemento.

  8. Selezionare File di configurazione dell'applicazione dalle opzioni e quindi fare clic su Aggiungi.

  9. Modificare il file di configurazione App.config con la stringa di connessione specifica.

    <?xml version="1.0"?>
    <configuration>
      <configSections>
        <section name="microsoft.xrm.client" type="Microsoft.Xrm.Client.Configuration.CrmSection, Microsoft.Xrm.Client"/>
      </configSections>
      <connectionStrings>   <add name="Xrm" connectionString="Server=http://crmserver/contoso; Domain=CONTOSO; Username=Administrator;Password=pass@word1"/></connectionStrings>
      <microsoft.xrm.client>
        <contexts default="Xrm">
          <add name="Xrm" type="Xrm.XrmServiceContext, Xrm" connectionStringName="Xrm"/>
        </contexts>
      </microsoft.xrm.client>
      <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/>
      </startup>
    </configuration>
    
  10. Aggiungere un'istruzione tramite lo spazio dei nomi utilizzati nel passaggio 1 alla creazione del progetto (ad esempio "Xrm").

  11. Aggiungere il codice seguente alla classe di programma:

    static void Main(string[] args)
    {
        var xrm = new XrmServiceContext("Xrm");
    
        WriteExampleContacts(xrm);
    
        //Create a new contact called Allison Brown.
        var allisonBrown = new Xrm.Contact
        {
            FirstName = "Allison",
            LastName = "Brown",
            Address1_Line1 = "23 Market St.",
            Address1_City = "Sammamish",
            Address1_StateOrProvince = "MT",
            Address1_PostalCode = "99999",
            Telephone1 = "12345678",
            EMailAddress1 = "allison.brown@example.com"
        };
    
        xrm.AddObject(allisonBrown);
        xrm.SaveChanges();
    
        WriteExampleContacts(xrm);
    
        Console.WriteLine("Press any key to exit.");
        Console.ReadKey();
    }
    
    /// <summary>
    /// Use all contacts where the email address ends in @example.com.
    /// </summary>
    private static void WriteExampleContacts(XrmServiceContext xrm)
    {
        var exampleContacts = xrm.ContactSet
            .Where(c => c.EMailAddress1.EndsWith("@example.com"));
    
        //Write the example contacts.
        foreach (var contact in exampleContacts)
        {
            Console.WriteLine(contact.FullName);
        }
    }
    
  12. Eseguire il debug e testare la soluzione. Verrà creato un contatto nell'organizzazione di Dynamics 365.

Vedere anche

Guida per sviluppatori del portale per Microsoft Dynamics CRM 2015
Procedure dettagliate dei portali per Dynamics CRM 2015
Procedura dettagliata: sviluppare un'applicazione Web che si connette a Microsoft Dynamics CRM 2015 tramite le estensioni per sviluppatori

© 2017 Microsoft. Tutti i diritti sono riservati. Copyright