Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este tópico descreve como usar as várias opções em Svcutil.exe para gerar clientes a partir de documentos de metadados.
Os documentos de metadados podem estar em um armazenamento durável ou ser recuperados on-line. A recuperação online segue o protocolo WS-MetadataExchange ou o protocolo Microsoft Discovery (DISCO). Svcutil.exe emite as seguintes solicitações de metadados simultaneamente para recuperar metadados:
WS-MetadataExchange (MEX) solicitação para o endereço fornecido.
Pedido MEX para o endereço fornecido com
/mexacrescentado.Solicitação DISCO (usando os DiscoveryClientProtocol serviços Web de ASP.NET) para o endereço fornecido.
Svcutil.exe gera o cliente com base no WSDL (Web Services Description Language) ou no arquivo de política recebido do serviço. O nome principal do usuário (UPN) é gerado concatenando o nome de usuário com "@" e, em seguida, adicionando um nome de domínio totalmente qualificado (FQDN). No entanto, para usuários que se registraram no Ative Directory, esse formato não é válido e o UPN que a ferramenta gera causa uma falha na autenticação Kerberos com a seguinte mensagem de erro: A tentativa de logon falhou. Para resolver esse problema, corrija manualmente o arquivo de cliente que a ferramenta gerou.
svcutil.exe [/t:code] <metadataDocumentPath>* | <url>* | <epr>
Tipos de referência e compartilhamento
| Opção | Descrição |
|---|---|
| /reference:<caminho do arquivo> | Tipos de referência no assembly especificado. Ao gerar clientes, use essa opção para especificar assemblies que podem conter tipos que representam os metadados que estão sendo importados. Forma abreviada: /r |
| /excludeType:<tipo> | Especifica um nome de tipo totalmente qualificado ou qualificado para montagem a ser excluído dos tipos de contrato referenciados. Forma abreviada: /et |
Escolhendo um serializador
| Opção | Descrição |
|---|---|
| /serializer:Automático | Seleciona automaticamente o serializador. Isso usa o DataContract serializador. Se isso falhar, o XmlSerializer é usado.Forma abreviada: /ser:Auto |
| /serializer:DataContractSerializer | Gera tipos de dados que usam o DataContract serializador para serialização e desserialização.Forma abreviada: /ser:DataContractSerializer |
| /serializer:XmlSerializer | Gera tipos de dados que usam o XmlSerializer para serialização e desserialização.Forma abreviada: /ser:XmlSerializer |
| /importXmlTypes | Configura o DataContract serializador para importar não DataContract tipos como IXmlSerializable tipos.Forma abreviada: /ixt |
| /dataContractOnly | Gera código apenas para DataContract tipos.
ServiceContract tipos são gerados.Você deve especificar apenas arquivos de metadados locais para essa opção. Forma abreviada: /dconly |
Escolher um idioma para o cliente
| Opção | Descrição |
|---|---|
| /language:<idioma> | Especifica a linguagem de programação a ser usada para a geração de código. Forneça um nome de idioma registrado no arquivo Machine.config ou o nome totalmente qualificado de uma classe que herda do CodeDomProvider. Valores: c#, cs, csharp, vb, vbs, visualbasic, vbscript, javascript, c++, mc, cpp Padrão: csharp Forma abreviada: /lPara obter mais informações, consulte CodeDomProvider classe. |
Escolhendo um namespace para o cliente
| Opção | Descrição |
|---|---|
| /namespace:<string,string> | Especifica um mapeamento de um WSDL ou esquema XML targetNamespace para um namespace CLR (Common Language Runtime). Usar um caracter curinga (*) para o targetNamespace mapeia tudo targetNamespaces sem um mapeamento explícito para o namespace CLR.Para certificar-se de que o nome do contrato de mensagem não colide com o nome da operação, qualifique a referência de tipo com dois pontos duplos ( ::) ou certifique-se de que os nomes são exclusivos.Padrão: Derivado do namespace de destino do documento de esquema para DataContracts. O namespace padrão é usado para todos os outros tipos gerados.Forma abreviada: /n |
Escolhendo uma vinculação de dados
| Opção | Descrição |
|---|---|
| /enableDataBinding | Implementa a INotifyPropertyChanged interface em todos os tipos de DataContract para habilitar a vinculação de dados.Forma abreviada: /edb |
Gerando configuração
| Opção | Descrição |
|---|---|
| /config:<configFile> | Especifica o nome do arquivo de configuração gerado. Padrão: output.config |
| /mergeConfig | Mescla a configuração gerada em um arquivo existente, em vez de substituir o arquivo existente. |
| /noConfiguração | Não gere arquivos de configuração. |