Criar classes de entidade associadas precocemente com a ferramenta de geração de código (CrmSvcUtil.exe)
Publicado: janeiro de 2017
Aplicável a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
CrmSvcUtil.exe é uma ferramenta da geração de código de linha de comandos para ser usada com o Microsoft Dynamics 365 (online e local). Essa ferramenta gerencia as classes de .NET Framework associadas precocemente que representam o modelo de dados da entidade usado por Microsoft Dynamics 365. Esta ferramenta está no pacote SDK na pasta SDK\Bin. Baixe o pacote do SDK do Microsoft Dynamics CRM.
Neste tópico
Sobre a ferramenta de geração de código
Executar a ferramenta de geração de código
Parâmetros
Exemplos de uso
Usar o arquivo de configuração
Habilitar o rastreamento
Sobre a ferramenta de geração de código
A ferramenta CrmSvcUtil.exe cria um arquivo de saída Microsoft Visual C# ou Microsoft Visual Basic .NET que contém as classes digitadas para entidades na organização. Isso inclui atributos e entidades personalizados. Este arquivo de saída contém uma classe para cada entidade, incluindo a associação precoce e suporte de IntelliSense em Microsoft Visual Studio para auxiliá-lo quando você grava o código personalizado. As classes geradas são classes parciais que podem ser estendidas com a lógica de negócios em arquivos separados. Também é possível criar extensões com essa ferramenta. Para obter mais informações, consulte Criar extensões para a ferramenta de geração de código.
A ferramenta também pode ser usada para gerar uma classe derivada da classe OrganizationServiceContext que atua como um contêiner de entidade no modelo de dados da entidade. Esse contexto de serviço oferece a instalação para acompanhar as alterações gerenciar identidades, concorrência e relacionamentos. Esta classe também expõe um método de SaveChanges que grava inserções, atualiza e exclui registros em Microsoft Dynamics 365. Para obter mais informações, consulte Usar a classe OrganizationServiceContext.
A ferramenta de geração de código leva vários parâmetros que determinam o conteúdo do arquivo criado. Os parâmetros podem ser passados da linha de comando ao executar a ferramenta ou em um arquivo de configuração de aplicativo conectado ao .NET.
As classes criadas pela ferramenta de geração de código são projetadas para serem criadas em uma biblioteca de classes que pode ser referência de seus projetos que usam o Microsoft Dynamics 365. Depois que o arquivo de classe é gerado usando a ferramenta, você deve adicionar o arquivo ao projeto do Visual Studio. Também é necessário adicionar referências a várias assemblies das quais as classes geradas são dependentes.
Esta é uma lista de assemblies que devem ser referenciadas no projeto ao usar o arquivo gerado de código.
Microsoft.Crm.Sdk.Proxy.dll
Microsoft.Xrm.Sdk.dll
Essas assemblies podem ser encontradas na pasta SDK\Bin do SDK. Baixe o pacote do SDK do Microsoft Dynamics CRM.
Executar a ferramenta de geração de código
Execute a ferramenta CrmSvcUtil.exe na pasta SDK\Bin. Se você executar a ferramenta em outro local da pasta, verifique se uma cópia da assembly Microsoft.Xrm.Sdk.dll existe nessa mesma pasta.
O exemplo a seguir mostra o formato para executar a ferramenta a partir da linha de comando para uma instalação local do Microsoft Dynamics 365. Forneça os valores de parâmetro da instalação.
CrmSvcUtil.exe /url:http://<serverName>/<organizationName>/XRMServices/2011/Organization.svc /out:<outputFilename>.cs /username:<username> /password:<password> /domain:<domainName> /namespace:<outputNamespace> /serviceContextName:<serviceContextName>
O exemplo a seguir mostra o formato para executar a ferramenta a partir da linha de comando com o Microsoft Dynamics 365 (online). Forneça os valores de parâmetros adequados para a conta e servidor.
CrmSvcUtil.exe /url:https://<organizationUrlName>.api.crm.dynamics.com/XRMServices/2011/Organization.svc /out:<outputFilename>.cs /username:<username> /password:<password> /namespace:<outputNamespace> /serviceContextName:<serviceContextName>
Para o parâmetro username, digite o nome de usuário usado para se conectar no Conta da Microsoft ou Microsoft Office 365. É possível localizar a URL correta no aplicativo da Web selecionando Configurações, navegando até Personalizações e, em seguida, escolhendo Recursos de desenvolvedor. A URL é mostrada em Serviço da organização.
Para listar os parâmetros da linha de comando com suporte, use o comando a seguir.
CrmSvcUtil.exe /?
Ao executar a ferramenta em Microsoft Dynamics 365 (online) usando o provedor de identidades do Conta da Microsoft, não é necessário fornecer os parâmetros deviceid e devicepassword na linha de comando. A ferramenta registra o dispositivo automaticamente. Entretanto, você pode registrar manualmente o dispositivo e obter os valores para os parâmetros primeiro compilando e executando o exemplo de código DeviceRegistration conforme descrito aqui.
Gerar sua ID e senha do dispositivo individuais
Abra e crie o projeto DeviceRegistration: SDK\Tools\DeviceRegistration\DeviceRegistration.csproj.
Execute o arquivo executável de linha de comando. Para registrar o dispositivo, defina o parâmetro /operation como Register.
C:\deviceregistration.exe /operation:Register
Copie os valores exibidos de ID e senha do dispositivo e use como os valores de parâmetro deviceid e devicepassword ao executar a ferramenta CrmSvcUtil.
Parâmetros
A tabela a seguir lista os parâmetros da ferramentas de geração de código e fornece uma descrição resumida do uso.
Parâmetro |
Atalho |
Descrição |
Necessário |
---|---|---|---|
deviceid |
di |
ID do dispositivo usado ao se conectar ao servidor online para autenticação. Necessário apenas se a ID do dispositivo não tiver sido armazenada na pasta %USERPROFILE%\LiveDeviceID. Usado apenas com o provedor de identidades do Conta da Microsoft. |
Falso |
devicepassword |
dp |
Senha do dispositivo usada ao se conectar ao servidor online para autenticação. Necessário apenas se a senha do dispositivo não tiver sido armazenada na pasta %USERPROFILE%\LiveDeviceID. Usado apenas com o provedor de identidades do Conta da Microsoft. |
Falso |
domain |
d |
O domínio em relação ao qual deve-se autenticar ao se conectar ao servidor. |
Falso |
url |
A URL para o serviço da organização. |
Verdadeiro |
|
out |
o |
O nome do arquivo para o código gerado. |
Verdadeiro |
language |
l |
O idioma no qual o código será gerado. Ele pode ser “CS” ou “VB”. O valor padrão é “CS”. |
Falso |
namespace |
n |
O namespace para o código gerado. O padrão é o namespace global. |
Falso |
username |
u |
O nome do usuário para utilizar ao se conectar ao servidor para autenticação. |
Falso |
senha |
p |
A senha para utilizar ao se conectar ao servidor para autenticação. |
Falso |
servicecontextname |
O nome da classe gerada do contexto do serviço da organização. Se nenhum valor for fornecido, nenhum contexto de serviço é criado. |
Falso |
|
help |
? |
Exibir Informações de uso. |
Falso |
nologo |
Omitir a faixa no tempo de execução. |
Falso |
|
generateActions |
Gere classes de solicitação e resposta para ações. |
||
interactivelogin |
il |
Ao definir para verdadeiro, um diálogo para entrar no serviço do Dynamics 365 é exibido. Todos outros parâmetros de conexão relacionados especificados na linha de comando são ignorados. |
Falso |
connectionstring |
connstr |
Contém informações, fornecidas como uma única cadeia, para conexão a uma organização de Dynamics 365. Todos outros parâmetros de conexão relacionados especificados na linha de comando são ignorados. Para obter mais informações, consulte Usar cadeias de conexão no trabalho realizado com ferramentas de XRM para se conectar ao Dynamics 365. |
Falso |
Exemplos de uso
Os exemplos a seguir mostram como usar a ferramenta da geração código na linha de comando para cada tipo de implantação. Observe que o nome de usuário e a senha são parâmetros opcionais. Se as credenciais do servidor de destino Microsoft Dynamics 365 estiverem armazenadas no cofre de credenciais do Windows, não será necessário fornecê-las para executar a ferramenta de geração de código.
Autenticação de declarações – Active Directory
O exemplo a seguir mostra como executar a ferramenta de geração de código usando a autenticação de declarações no Active Directory. Observe o use de https, pois este servidor de exemplo está usando Transport Layer Security (TLS) ou Secure Sockets Layer (SSL).
CrmSvcUtil.exe /url:https://myport:555/MyOrg/XRMServices/2011/Organization.svc /out:GeneratedCode.cs
/username:administrator /password:password
Microsoft Dynamics 365 (online)
O exemplo a seguir mostra como executar a ferramenta de geração de código para Microsoft Dynamics 365 (online). O primeiro exemplo é para o provedor de identidades do Conta da Microsoft e o segundo é para o provedor de identidades do 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!"
Autenticação de declarações - IFD
O exemplo a seguir mostra como executar a ferramenta de geração de código usando a autenticação de declarações.
CrmSvcUtil.exe /url:https://myorg.crm.com:555/XRMServices/2011/Organization.svc /out:GeneratedCode.cs /username:administrator /password:p@ssword!
Usar o arquivo de configuração
O arquivo de configuração CrmSvcUtil.exe.config deve estar na mesma pasta que a ferramenta CrmSvcUtil.exe. O arquivo de configuração usa os pares de chave/valor padrão na seção appSettings. Entretanto, se você inserir um valor na linha de comando, esse valor será usado em vez do valor no arquivo de configuração. Todos os pares de chaves/valor localizados no arquivo de configuração do aplicativo que não corresponderem a nenhum dos parâmetros esperados serão ignorados.
Não inclua os parâmetros url e namespace no arquivo de configuração. Eles devem ser inseridos na linha de comando quando a ferramenta CrmSvcUtil.exe estiver sendo executada.
O exemplo a seguir mostra como configurar o arquivo de saída e os parâmetros de nome de domínio no arquivo de configuração do aplicativo usando as teclas de atalho.
<appSettings> <add key="o" value="CrmProxy.cs"/> <add key="d" value="mydomain"/></appSettings>
Habilitar o rastreamento
Para habilitar o rastreamento ao executar a ferramenta, adicione as seguintes linhas ao arquivo de configuração:
<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>
Para obter mais informações sobre as opções de rastreamento suportadas, consulte Configurar o rastreamento para o uso das ferramentas de XRM.
Confira Também
Ferramentas do desenvolvedor
Procurar os metadados da sua organização
Criar extensões para a ferramenta de geração de código
Usar as classes de entidade associadas precocemente para criar, atualizar e excluir
Dicas de solução de problemas
Executar um único programa usando os serviços Web do Microsoft Dynamics 365
Microsoft Dynamics 365
© 2017 Microsoft. Todos os direitos reservados. Direitos autorais