1

Como eu faço para passar um objeto que tenho num REST para um ASMX? Tenho essa controller no REST que tem o objeto(cliente) que desejo enviar para um ASMX

[Route("api/[controller]")]
public class OptOutClientController : Controller
{
   HttpClient client = new HttpClient();
   private readonly IOptOutService _service;
   public OptOutClientController(IOptOutService service)
   {
        _service = service;
   }

   [HttpPost]
   public OptOutCliente Unsubscribe([FromBody]OptOutCliente cliente)
   {
      if (cliente == null)
         throw new OptOutException("Informar os dados do cliente OptOut!");

      var valida = _service.Process(cliente);

      BasicHttpBinding httpBinding = new BasicHttpBinding();
      EndpointAddress wsUrl = new 
             EndpointAddress("http://localhost:64460/meuservico.asmx");

      //ServicoWSClient soapClient = new ServicoWSClient(httpBinding, wsUrl);

      return cliente;
  }
}

Como eu passo esse cliente pro outro lado?

4
  • Quando você adiciona a referência ao serviço externo ele "importa" as classes de reflexão/contrato utilizadas pelo mesmo, assim como cria a classe de Client, comentada em seu código Commented 25/06/2018 às 20:33
  • @LeandroAngelo, deixa-me ver se entendi. A classe ServicoWSClient é uma classe existente no serviço a ser consumido, certo?
    – pnet
    Commented 25/06/2018 às 21:08
  • 1
    ela é gerada quando você adiciona a referência do serviço. É isso ou vai precisar fazer um post com o XML especificado no wsdl, assim como fazer o par se do XML que receberá no retorno Commented 25/06/2018 às 21:32
  • 1
    Pode ser através da referência do serviço: msdn.microsoft.com/pt-br/library/bb628649.aspx Ou pode ser igual este exemplo: pt.stackoverflow.com/questions/5670/…
    – Gus
    Commented 25/06/2018 às 22:54

0

Você deve fazer log-in para responder a esta pergunta.

Pesquise outras perguntas com a tag .