Compartilhar via


Web Service Endpoints Baseados em Arquivos WSDL

Você pode usar uma abordagem orientada por contrato para definir o comportamento de serviço.Você pode executar essa tarefa, criando pontos de extremidade de provedor de serviços Web de arquivos WSDL (linguagem WSDL).Você também pode estar em conformidade com pontos de existentes extremidade de serviço Web provedor a arquivos WSDL.

Observação:

Você pode executar Essas tarefas usando arquivos .Discoteca.Esta versão oferece suporte apenas para arquivos WSDL que contêm arquivos .Discoteca e única vinculações WSDL que referência e serviços da Web único.Para obter mais informações, consulte Comunicação entre aplicativos.

Para obter mais informações, consulte as seções a seguir:

  • Creating Web Service Endpoints from WSDL Files

  • Conforming Web Service Endpoints to WSDL Files

  • Web Service Endpoints Based on WSDL Files

  • Custom Types Referenced in Operation Signatures

Para obter mais informações sobre o design controlado por contrato de serviço, consulte a página Contract First Web Services interoperabilidade no MSDN online em https://go.Microsoft.com/fwlink/?LinkId=49584.

Criando pontos finais do serviço Web a partir de arquivos WSDL

Você pode criar pontos de extremidade baseados em WSDL em sistemas e aplicativos ASP.NET.Este ponto de extremidade é exibido no aplicativo ou sistema.Ele ocupa com assinaturas de operação referenciadas pelo arquivo WSDL.Essas assinaturas de operação também aparecem no arquivo de classe de serviço Web se o aplicativo associado é implementado já.Arquivos de classes adicionais também podem aparecer no projeto do aplicativo se essas assinaturas de referência a quaisquer tipos personalizados.Para obter mais informações, consulte Custom Types Referenced in Operation Signatures.

Observação:

Somente os aplicativos podem ser implementados, sistemas não .

Criando um serviço Web provedor ponto de extremidade de um arquivo WSDL produz um resultado equivalente a usar o Wsdl.exe Utilitário de linha de comando com o /server opção. Para obter mais informações, consulte o seguinte:

Pontos finais em conformidade do serviço Web a arquivos WSDL

Acordo com os existentes serviço Web pontos de extremidade de provedor para arquivos WSDL.Essa ação adiciona ou altera qualquer assinaturas operação existente, em conformidade com o arquivo WSDL.Essa ação pode também afetam a operação assinaturas e digite nomes de código se o aplicativo associado é implementado já.No entanto, não serão ser conformed tipos aninhados dentro de Datasets.

Observação:

Em conformidade com um n ponto de extremidade em um membro de um sistema Na verdade está de acordo com o subjacente ponto de extremidade definição .Esta ação Modif Propriedades de usos dessa definição em outros sistemas .

Embora não irá alterar nenhum código de corpo de método, alterações em assinaturas de operação e nomes de tipo podem fazer com que o código de corpo de método a compilar não.Portanto, revise seu código.Identificar as alterações que podem ser necessárias para corrigir os erros do compilador.Para obter mais informações, consulte Alterações de código após que estão de acordo com serviço Web Endpoints aos arquivos WSDL.

Web Service Endpoints Baseados em Arquivos WSDL

Um arquivo WSDL Especifica os requisitos para fornecer e consumir um serviço Web.Ele atua sistema autônomo um contrato entre o provedor e consumidor.Pontos de extremidade de serviço Web com base na mesma versão de um arquivo WSDL também permite que você substitua esses pontos de extremidade.Para obter mais informações, consulte Substituição do ponto de extremidade de serviço Web.

A definição de vinculação WSDL em um arquivo WSDL descreve as operações oferecidas por um serviço Web.O serviço Web empresa provedor representa essa vinculação WSDL.Se o aplicativo ASP.NET associado permite a geração do arquivo WSDL, Visual Studio gera um arquivo WSDL novo para cada serviço Web no aplicativo (depois que o aplicativo for implementado). Visual Studio também usa esse arquivo WSDL para gerar referências da Web para aplicativos de consumidor de serviço Web associadas (depois que elas são implementadas). Para obter mais informações, consulte Como: Controle de geração de arquivo WSDL para serviços Web do ASP.NET.

Após o arquivo WSDL de um serviço Web é publicado, cada alterar em uma definição de serviço Web é considerada uma nova vinculação WSDL.

Dica:

Se Você Chang e o Serviço da Web definição, alterar o nome da vinculação WSDL, a ligação WSDL namespace, ou ambos.Alterar uma definição de serviço Web sem alterar seu nome de vinculação WSDL ou namespace pode ocultar o fato de que a serviço Web não é compatível com conectado ou aplicativos conectados anteriormente.O valor padrão para o nome do serviço WSDL e o nome de vinculação WSDL é" WebServiceN " ; Representa "N" s um número ordinal.No entanto, uma vez implementar o aplicativo, excluindo o nome de vinculação WSDL no arquivo de classe de serviço Web altera o valor padrão" WebServiceNSoap ".O valor padrão para o namespace do serviço WSDL e o namespace de vinculação WSDL é "http://tempuri.org".A descrição de serviço WSDL e as propriedades de local de vinculação WSDL não tem um valor padrão.O valor padrão para o nome de vinculação WSDL é" WebServiceN ".

Quando você alterar o nome de vinculação WSDL ou ligação de espaço para nome em um não implementada serviço Web ponto de extremidade de provedor, as propriedades correspondentes do quaisquer pontos de extremidade consumidor conectado e não implementado ou atualizar automaticamente ou atualizar quando eles são reconectados.No entanto, quando você alterar essas propriedades em um implementado serviço Web ponto de extremidade de provedor, nenhum conectado e implementado serviço Web pontos de extremidade consumidor não podem atualizar imediatamente.No entanto, você pode atualizar manualmente essas propriedades para esses pontos de extremidade consumidor.

Tipos personalizados referenciados em assinaturas de operação

As assinaturas de operação em um ponto de extremidade de serviço Web podem fazer referência a classes CLR que o identificador de serialização de XML para tipos XML complexos referenciados no arquivo WSDL ou relacionadas a arquivos do esquema XML.Se o aplicativo associado não ainda implementadas, Visual Studio gera arquivos de código para estas classes após a implementação. Ele gera esses arquivos junto com serviço Web correspondente e arquivos de projeto de aplicativo.Se o aplicativo já estiver implementado, ele adiciona arquivos de código para estas classes ao projeto existente.Para obter mais informações, consulte Visão geral do ASP.NET Applications on aplicativo Diagrams.

Observação:

Quando você copia um ponto de extremidade de serviço Web baseados em WSDL para um outro aplicativo, Visual Studio Copia apenas as assinaturas de operação. Se o aplicativo de destino for implementado já, ele não copia os arquivos de código para classes CLR adicionais.Se o aplicativo de destino ainda não for implementado, ela não irá gerar os arquivos de código para estas classes após a implementação.Para evitar essa situação, crie pontos de extremidade do mesmo WSDL ou arquivo .Discoteca usado para os pontos de extremidade que você deseja copiar.

Em alguns esquemas XML, a classe de serviço Web e classes de serialização de dados exigem atributos de serialização adicionais para certificar-se de que o XML está formatado corretamente.Entretanto, os pontos de extremidade de provedor de serviços da Web baseados em WSDL oferecem suporte a apenas um pequeno conjunto desses atributos de serialização.Em um pequeno número de casos, o arquivo WSDL resultante gerado para o ponto de extremidade de serviço Web e as mensagens XML resultantes não poderá consistente com o arquivo WSDL original usado para criar o ponto de extremidade de provedor de serviços da Web.

Dica:

Se Esses problemas ocorrem , use o utilitário WSDL.exe para gerar a classe de serviço Web e classes de serialização de dados em vez de c reat ING um ponto de extremidade de serviço Web provedor partir de um arquivo WSDL.No entanto, você precisará adicionar manualmente o código gerado para seu projeto e em seguida criar o necessário .asmx arquivo.A corrigir Ponto de extremidade de provedor de serviços da Web aparecem s.Isso torna possível para você usar o designer Para edição o ponto de extremidade.

A lista a seguir contém mais informações sobre suporte para esses atributos de serialização:

  • Esses atributos de serialização de XML são adicionados ao classes geradas para tipos XML complexos: SerializableAttribute, SoapTypeAttribute, XmlIncludeAttribute, XmlRootAttribute, e XmlTypeAttribute.

  • Esses atributos de serialização de XML são adicionados à classe campos: XmlAnyAttribute, XmlArrayAttribute, XmlArrayItemAttribute, XmlAttributeAttribute, XmlChoiceIdentifierAttribute, XmlElementAttribute, XmlEnumAttribute, XmlIgnoreAttribute, XmlNamespaceDeclarationsAttribute, e XmlTextAttribute.

  • Atributos de serialização não são aplicados ao tipo de retorno para métodos da Web.

  • Atributos de serialização não são aplicados aos parâmetros de métodos da Web.

  • Os seguintes atributos de serialização codificada em SOAP não são aplicados a essas classes: SoapElementAttribute, SoapIgnoreAttribute, SoapAttributeAttribute, SoapAttributeOverrides, SoapAttributes, SoapEnumAttribute, e SoapIncludeAttribute.

  • Argumentos de atributo que requerem um tipo complexo XML serão gerados sistema autônomo um tipo string com o nome totalmente qualificado do tipo.Isso causará um erro de compilador que precisam ser corrigidos.

    Por exemplo, <XmlIncludeAttribute(GetType("ClassName"))> no Visual Basic será gerado sistema autônomo <XmlIncludeAttribute("ClassName")>, enquanto [XmlIncludeAttribute(typeof("ClassName"))] no Visual translation from VPE for Csharp será gerada sistema autônomo [XmlIncludeAttribute("ClassName")].

Consulte também

Tarefas

Como: Adicionar pontos de extremidade para aplicativos

Como: Está de acordo com pontos finais do serviço Web a arquivos WSDL

Conceitos

Visão geral dos pontos de extremidade em aplicativos