Value of type 'System.Collections.Generic.List()' cannot be converted to '1-dimensional array of '

02/10/2012

0

Bom dia pessoal!
Estou com um problema que não consigo resolver.

Construí um serviço web em c#, onde tenho a seguinte estrutura:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <Header xmlns="http://tempuri.org/">
      <User>string</User>
      <Password>string</Password>
    </Header>
  </soap:Header>
  <soap:Body>
    <CarregarArquivo xmlns="http://tempuri.org/">
      <pListaPacote>
        <Pacote>
          <Arquivo>base64Binary</Arquivo>
          <Requisicao>
            <Codigo>string</Codigo>
            <Mensagem>string</Mensagem>
            <Arquivo>string</Arquivo>
            <Descricao>string</Descricao>
            <Pedido>string</Pedido>
            <Usuario>string</Usuario>
            <Versao>string</Versao>
          </Requisicao>
        </Pacote>
        <Pacote>
          <Arquivo>base64Binary</Arquivo>
          <Requisicao>
            <Codigo>string</Codigo>
            <Mensagem>string</Mensagem>
            <Arquivo>string</Arquivo>
            <Descricao>string</Descricao>
            <Pedido>string</Pedido>
            <Usuario>string</Usuario>
            <Versao>string</Versao>
          </Requisicao>
        </Pacote>
      </pListaPacote>
    </CarregarArquivo>
  </soap:Body>
</soap:Envelope>


Criei uma aplicação simples em vb.net para consumir o serviço, mas esbarrei no seguinte erro:
Error 1 Value of type 'System.Collections.Generic.List(Of ConsumirServico.Pacote)' cannot be converted to '1-dimensional array of ConsumirServico.ServiceReference1.Pacote'. D:\Ricardo\Projetos\ConsumirServico\ConsumirServico\Form1.vb 57 48 ConsumirServico


Abaixo o trecho ao qual me refiro:
        Dim br As New BinaryReader(fStream)
        Dim data As Byte() = br.ReadBytes(CInt(numBytes))
        Dim MyHeader As New ServiceReference1.Header
        MyHeader.User = txtUsuario.Text
        MyHeader.Password = "xxx"
        Dim MyResult As New ServiceReference1.TsIntegracaoSawSoapClient
        Dim lista As New List(Of ConsumirServico.ServiceReference1.Pacote)
        Dim p As ConsumirServico.ServiceReference1.Pacote
        Dim r As ConsumirServico.ServiceReference1.Request
        p.Arquivo = data 'Binário do arquivo
        p.Requisicao.Codigo = "" 'Retorno da requisição
        p.Requisicao.Mensagem = "" 'Retorno da requisição
        p.Requisicao.Arquivo = nomeArquivo
        p.Requisicao.Descricao = "Descrição teste"
        p.Requisicao.Pedido = "12345678"
        p.Requisicao.Usuario = txtUsuario.Text
        p.Requisicao.Versao = "N"
        lista.Add(p)
        r = MyResult.CarregarArquivo(MyHeader, lista)


Alguém tem idéia de como eu posso fazer para resolver isso?
Obrigado!

Ricardo Nunes

Ricardo Nunes

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar