Share via


Usar as ferramentas XRM com classes geradas usando a ferramenta de geração de código

 

Publicado: janeiro de 2017

Aplicável a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

O assembly do Microsoft.Xrm.Tooling.Connector não fornece interfaces diretamente para as classes de contexto da entidade e de dados geradas usando a ferramenta de geração de código. Entretanto, você pode usar a conexão do Microsoft Dynamics 365 criada pela classe CrmServiceClient para configurar as classes de contexto da entidade e de dados usando a ferramenta de geração de código.Para obter mais informações:Criar classes de entidade associadas precocemente com a ferramenta de geração de código (CrmSvcUtil.exe)

Para usar a conexão do Dynamics 365 criada pela classe CrmServiceClient, crie uma conexão com o Dynamics 365 usando uma instância dessa classe e defina o valor do objeto OrganizationServiceProxy como a propriedade CrmServiceClient.OrganizationServiceProxy.

CrmServiceClient crmSvc = new CrmServiceClient(new System.Net.NetworkCredential("<UserName>", "<Password>",“<Domain>”),"<Server>", "<Port>", "<OrgName>");

// Verify that you are connected.
if (crmSvc != null && crmSvc.IsReady)
{
    //Display the CRM version number and org name that you are connected to
    Console.WriteLine("Connected to CRM! (Version: {0}; Org: {1}", 
    crmSvc.ConnectedOrgVersion, crmSvc.ConnectedOrgUniqueName);

    Microsoft.Xrm.Sdk.Client.OrganizationServiceProxy prox = crmSvc.OrganizationServiceProxy; 
}
else
{
    // Display the last error.
    Console.WriteLine("Error occurred: {0}", crmSvc.LastCrmError);

    // Display the last exception message if any.
    Console.WriteLine(crmSvc.LastCrmException.Message);
    Console.WriteLine(crmSvc.LastCrmException.Source);
    Console.WriteLine(crmSvc.LastCrmException.StackTrace);

    return;
}

Observação

A classe OrganizationServiceProxy não é segura quanto ao thread. Ao trabalhar com as classes de contexto da entidade e de dados geradas usando a geração de ferramenta de código ou usando .NET LINQ (Language-Integrated Query) para recuperar dados, você pode considerar criar um esquema de bloqueio no código se ele for executado em um ambiente de vários threads.

Confira Também

Use o Serviço da organização para ler e gravar dados ou metadados
Criar aplicativos cliente do Windows usando as ferramentas XRM

Microsoft Dynamics 365

© 2017 Microsoft. Todos os direitos reservados. Direitos autorais