none
Enviar e receber XML em C#

    Question

  • Olá pessoal.
    Estou iniciando em .NET fazendo um sistema de webservices, onde preciso enviar um xml e receber como retorno um xml também.
    Dei uma pesquisada e pelo o que percebi, não vou poder usar Web Reference para resgatar os métodos do webservice que pretendo consumir.
    Dessa forma eu gostaria de saber como posso montar um xml seguindo o protocolo soap para um determinado servlet e como fazer o parse dos dados de retorno.

    o xml que eu quero montar para enviar deve ficar nessa seguinte estrutura:

    <?xml version="1.0" encoding="UTF-8"?>
    <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Body>
    <m:Envio xmlns:m="http://www.urldeenvio.com/soap/arquivo.xsd">
    <usuario id="522" senha="pwd000"/>
    <ack txt_email="teste@email.com.br" num_ack="12345678910" num_obs="1"/>
    </m:Envio>
    </soap-env:Body>
    </soap-env:Envelope>


    Eu não tenho a necessidade de salvar esse xml, apenas quero criá-lo e enviar ele para uma determinada url.
    Espero que possam me ajudar.

    Obrigado.


    Monday, October 19, 2009 11:35 AM

All replies

  • Olá Felipe,

    Tem certeza de que tem que montar esse envelope SOAP na mão ? Isso não é uma boa idéia!
    Tente expor seus serviços usando WCF, assim você pode ter um controle do formato do envelop soap usando o MessageContracts, veja mais em: http://msdn.microsoft.com/en-us/library/ms730255.aspx

    Fred Policarpo - MCT, MCTS [Win, WPF, WF] http://twitter.com/fredpolicarpo
    • Proposed as answer by Fred Policarpo Monday, October 19, 2009 12:07 PM
    Monday, October 19, 2009 12:06 PM
  • Obrigado, Fred.
    Vou pesquisar sobre MessageContracts e em caso de dúvida ou solução volto a postar aqui no fórum.
    Monday, October 19, 2009 12:16 PM
  • Olá Fred.
    Voltei aqui com a mesma dúvida que iniciei o tópico: ainda não consigo enviar  documentos xml via protocolo soap.
    Eu dei uma pesquisada em MessageContracts e pelo o que percebi, eles não possuem um controle de formato tão aberto assim, para a forma que estou querendo enviar pelo menos .
    Caso eu esteja errado sobre esse controle de formato do xml montado, teria como mostrar-me a maneira de criar um xml que utilize o protocolo SOAP e tenha o formato que mostrei no post acima e enviar para uma determinada url (no caso, um servlet)?


    Obrigado,

    Felipe





    Wednesday, October 21, 2009 11:18 AM