none
Lista de objetos Web Service RRS feed

  • Pergunta

  • Olá;

    Estou com uma dúvida sobre Web Services... 

    WEB SERVICE:

    [WebMethod]
    public void enviarLista(List<MeuTipo> lstMeuTipo)
    {
                this.lst = lstMeuTipo;
    }

    CLIENTE:

    Service1 serv = new Service1();

    List<MeuTipo> lstMeuTipo= new List<MeuTipo>();

    serv.enviarLista(lstMeuTipo);

    O erro é o seguinte: O WEB Service espera um lstMeuTipo[] e não uma List<lstMeuTipo>, por que isso ocorre ? Sendo que ele espera uma lista, e recebe uma lista...

    quarta-feira, 18 de setembro de 2013 16:39

Respostas

  • Pensando na manutenção, jogue no Web Services assim você consome essa classe remotamente e sem um dia mudar alguma coisa na classe você simplesmente manda atualizar o Proxy nas aplicações Clientes...


    Leonardo Lourenço Silva


    quarta-feira, 18 de setembro de 2013 18:07

Todas as Respostas

  • Quando você vai adicionar uma referência para um serviço (asmx, svc), se você clicar no botão Advanced tem um ComboBox com o Texto Collection Type e por padrão vem como System.Array, é ali que você fala como o Proxy vai interpretar as coleções, troque para System.Collections.Generic.List e de um Update Proxy Reference.

    Leonardo Lourenço Silva


    quarta-feira, 18 de setembro de 2013 16:41
  • Não funcionou, continua dando o mesmo erro, até criei um projeto novo pra testar...
    quarta-feira, 18 de setembro de 2013 17:43
  • Normalmente é só isso, o próprio VS na geração do Proxy deixa como Array...

    Deleta o proxy e coloca denovo, fiz um teste aqui bem simples e foi 


    Leonardo Lourenço Silva


    quarta-feira, 18 de setembro de 2013 17:46
  • Beleza, não deu aqui mas depois eu vejo isso...

    Aproveitando o tópico tenho outra dúvida...

    Tenho uma dll, MeuTipo.dll

    Tenho 3 projetos, 1 Web Service 2 Windows Forms.

    Preciso de uma classe que está dentro da MeuTipo.dll, preciso adicionar essa dll como referência em todos os projetos, ou basta adicionar no Web Service ?

    quarta-feira, 18 de setembro de 2013 18:03
  • Pensando na manutenção, jogue no Web Services assim você consome essa classe remotamente e sem um dia mudar alguma coisa na classe você simplesmente manda atualizar o Proxy nas aplicações Clientes...


    Leonardo Lourenço Silva


    quarta-feira, 18 de setembro de 2013 18:07