Criando Web Services clássicos (.asmx) para SharePoint 2007/2010/2013
Outros
11 jul 16 • 1 min de leitura
Crie seu .asmx e seu .asmx.cs normalmente;
Crie um site no IIS apontando para o diretório onde foi feita a implantação do .asmx (geralmente C:\program files\common files\microsoft shared\web server extensions\<versão>\ISAPI\<projeto>);
Através desse novo site, acesse o .asmx?wsdl. Se o código estiver correto, ele vai funcionar, gerando o wsdl em xml;
Salve esse arquivo .xml. Copie o conteúdo dele para o arquivo <nome_igual_ao_asmx>wsdl.aspx, criado juntamente com o arquivo .asmx (na mesma pasta);
Não utilize a formatação automática do Visual Studio nesse XML, senão o WSDL ficará inválido;
Não deixe a tag de header <?xml …> no início do arquivo, senão ele ficará inválido;
Altere as tags fixas de endereço do Web Service com tags dinâmicas, seguindo o exemplo de outros .aspx do projeto. Esse é o motivo do arquivo precisar terminar com a extensão .aspx: para que ele seja processado e o endereço possa ser dinâmico de acordo com as configurações AAM;
Faça a implantação e teste acessando pelo endereço do SharePoint (/_vti_bin/<projeto>/<WebService>.asmx?wsdl). Se o WSDL aparecer corretamente, está funcionando;
Lembre-se que toda vez em que houver manutenção na assinatura do método será necessário re-gerar o asmx.aspx. Dica: Tente copiar/colar só a parte que foi alterada, se for uma alteração pequena.
Curadoria exclusiva dos principais temas de tech com a IterisNews.
Nós utilizamos cookies para para manter o funcionamento do nosso site e de algumas funcionalidades necessárias, além de entendermos como você utiliza o site e ajustar o conteúdo para torná-lo mais relevante. Caso clique em “Aceitar todos os cookies”, você concordará com a utilização conforme mencionada. É possível, ainda, que você opte por rejeitar todos os cookies não necessários, clicando na opção “Rejeitar todos os cookies”. Para gerenciar os cookies do website, clique em “Gerenciar cookies”. Caso queira entender mais sobre os cookies, acesse a nossa Política de Cookies.