none
Chamando Web Service RRS feed

  • Pergunta

  • Pessoal,  

    tenho um Web Service em C# que contém um único parâmetro do tipo String.

    Estou chamando o Web Service pelo SQL Server, quando passo um texto pequeno por parâmetro na chamada do Web Service o meu sistema acaba recebendo sem problemas, mais quando o Parâmetro o seu tamanho passa de 1982 de caracteres, a chamada me retorno erro.

    Eu estava querendo passar XML por parâmetro, mas tenho essa dificuldade citada acima. Poderiam me ajudar? 

    quinta-feira, 21 de maio de 2015 20:42

Respostas

Todas as Respostas

  • Ricardo,

    Entendo que o problema não esteja relacionado com o SQL Server, mas em todo caso, qual é o tipo de dados utilizado por este parâmetro?


    Pedro Antonio Galvao Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    quinta-feira, 21 de maio de 2015 23:02
  • Opa Pedro!

    Estou passando um XML, mas faço Covert para Nvarchar para passar ela como String, no lado do C# eu espero um parâmetro (string xml), mas o tamanho máximo só vem até 1982 letras!

    Entedeu?

    sexta-feira, 22 de maio de 2015 02:16
  • Ricardo,

    Com qual tamanho você esta passando o NVarchar? Talvez seja o caso de utilizar o NVarchar(Max)!!!!


    Pedro Antonio Galvao Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    domingo, 24 de maio de 2015 01:50
  • Ricardo,

    Existe uma falha ao obter grandes quantidades de dados de um WebService no SQL Server.

    Para manipular uma grande quantidade de dados recebidos por buffer do WebService através do SQL Server é necessário "despejar" o conteúdo do ResultSet para uma coluna de uma tabela ou de uma variável "table".

    Talvez exista alguma relação também para adicionar dados para o "post" no WebService. Além disso, procure ver como é a assinatura deste serviço, porque você pode ter de fazer o envio dos dados de outro modo. Uma alternativa seria criar um Assembly em C# para ser consumido pelo SQL Server, com o intuito de realizar esta tarefa.

    Para maiores informações veja:

    http://social.technet.microsoft.com/wiki/pt-br/contents/articles/16045.accessing-an-web-service-from-a-sql-server-clr-assembly-procedure-or-function.aspx

    http://blogs.msdn.com/b/spike/archive/2010/11/25/how-to-consume-a-web-service-from-within-sql-server-using-sql-clr.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    segunda-feira, 25 de maio de 2015 17:38
    Moderador