CRM 2013/2015/2016 – Conexão Simplificada (Simplified Connection)


Pessoal,

Acredito que tenha sido após o release Polaris no CRM 2011 tenhamos “ganho” uma forma bem simplificada de conexão ao CRM quando estamos acessando “fora de seus domínios”, ou seja, através de uma aplicação custom. Quando estamos acessando através de um plugin ou custom workflow teríamos o contexto e não precisamos nos “re-conectar”.

Uma Conexão Simplificada (Simplified Connection) nos remete de volta as Connections Strings do .NET! Sim, agora podemos utilizar uma simples connection string e apenas DUAS LINHAS no C# para termos acesso ao WCF do Dynamics CRM!

Microsoft.Xrm.Client.CrmConnection connection = Microsoft.Xrm.Client.CrmConnection.Parse(
System.Configuration.ConfigurationManager.ConnectionStrings["NOME DE SUA CHAVE"].ToString());
OrganizationService _orgService = new OrganizationService(connection);

Assim, resolvi criar este post para ajudar a disseminar esta boa dica! Incrementei um pouco ao original (Sample: Simplified connection quick start using Microsoft Dynamics CRM), inseri uma criptografia (fonte: MSDN) para melhorar um pouco mais a segurança do conteúdo do web.config.

Basicamente, existem 5 pontos para serem observados:

1 – Criptografia (classe Cripto) – Devemos criar “nossas sementes” de criptografia, respeitando a quantidade de caracteres obrigatórios. (Fique tranquilo quanto ao conteúdo dos métodos, vou disponibilizar o source!):

simplifiedconn1

2 – Conexão com o CRM (classe Connection) – Criei uma classe de conexão implementando o Pattern Singleton, para não ficarmos a todo momento criando novas conexões:

simplifiedconn2

3 – Gerar Criptografia (“Crypto.exe”) – Na imagem 1, notem que temos dois projetos nesta solução, para gerarmos nossa criptografia, precisamos executar primeiro o arquivo “Crypto.exe” que é gerado ao compilarmos o projeto “Crypto

simplifiedconn4

Informe, os dados de conexão com o Dynamics CRM que deseja conectar-se (para maiores detalhes da formatação, não deixe de ler o artigo do SDK), exemplo:

simplifiedconn4_1

 

4 – Connection String (app ou web.config) – Adicionar a chave que foi gerada pelo “Crypto.exe”:

simplifiedconn3
5 – Para testarmos a conexão, criei  para fins de teste uma chamada da clase “WhoAmIResponse”:

simplifiedconn5

O resultado será a apresentação do GUID do usuário que foi utilizado na conexão com o CRM:

simplifiedconn6

 

Pronto! Nada além do SDK e muito útil para o desenvolvimento, ganhamos um bom tempo de trabalho!

Para ter acesso a solução baixe o arquivo ConnectionInCRM2013 (está em formato .doc, substitua para .zip e descompacte).

É isso pessoal, espero que ajude!

7 comentários em “CRM 2013/2015/2016 – Conexão Simplificada (Simplified Connection)

  1. Tiago boa tarde,

    Estou começando a desenvolver para o MSCRM porém não consigo achar nenhum material para criar conexão com o banco de dados do MSCRM e como e o codebehind para criar por exemplo um novo Contato no MSCRM 2015, pagina web, você tem algum link ou material que possa me ajudar?

    Curtir

    1. Olá Ricardo,

      Para o CRM não fazemos acesso ao banco de dados, usamos seus serviços (Web Services), o principal é o Organization Services. Inclusive este post que você postou seu comentário, possui como realizar a conexão com o CRM.
      Outro ponto importante é que quando necessitamos criar novas funcionalidades dentro do CRM, não é preciso fazer uma conexão, pois herdamos do contexto.
      O CRM possui um guia para desenvolvimento que é o seu SDK, procure post “Dynamics CRM SDK”, lembre-se de pegar a versão referente ao CRM que está utilizando.
      Acredito que no meu blog você possa encontrar alguns exemplos de como desenvolver para o CRM, você primeiro precisa entender onde vai customizar e qual tecnologia será desenvolvida.

      Para por exemplo trabalhar com contato, faríamos algo assim:

      Entity contact = new Entity(“contact”);
      contact[“firstname”] = “Tiago”;
      contact[“lastname”] = “Cardoso”;
      service.Create(contact); // onde service é o objeto que representa o Web Services

      []’s,
      Tiago Cardoso

      Curtir

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.