none
Erro WebService retornar DataTable ou DataSet RRS feed

  • Pergunta

  • Boa noite pessoal, o meu problema é o seguinte, eu tenho um método que retorna um DataTable, assim:

    Public Function getComprasPendentes() As System.Data.DataTable

            Const stringConsulta As String = "SQL MALANDRO AQUI"

            Dim myDataSet As New DataSet()

            If (Conectar()) Then

                Dim myCommand As New MySqlCommand(stringConsulta, conn)
                Dim myAdapter As New MySqlDataAdapter(myCommand)
                myAdapter.Fill(myDataSet, "Compras")

                Desconectar()

                Return myDataSet.Tables("Compras")

     

            End If

    End Function

     

    O meu WebService está assim:

     

    [WebMethod]
            public System.Data.DataTable getComprasPendentes()
            //Método responsável por buscar compras pendentes para aprovação
            {
                DAOCompras daoCompras = new DAOCompras();
                return daoCompras.getComprasPendentes();
            }

     

    Agora quando eu executa a aplicação ocorre um erro: Column requires a valid DataType

    public System.Data.DataTable getComprasPendentes() {
                object[] results = this.Invoke("getComprasPendentes", new object[0]); //Erro esse linha
                return ((System.Data.DataTable)(results[0]));
            }

     

    Por favor, alguém pode me ajudar, já tentei retornar um DataSet também mas não consegui.
    quinta-feira, 16 de junho de 2011 02:09

Todas as Respostas

  • Ola, veja o seguinte exemplo:

     

    //Visual C#
      [WebMethod]
      public System.Data.DataSet GiveMeADataSet()
      {
        System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection("Server=YourServer;Initial Catalog=pubs;Integrated Security=SSPI;");
       System.Data.DataSet ds = new System.Data.DataSet();
        System.Data.SqlClient.SqlDataAdapter adapter = new System.Data.SqlClient.SqlDataAdapter();
        adapter.SelectCommand = new System.Data.SqlClient.SqlCommand("Select * From Authors", conn);
        adapter.Fill(ds, "Authors");
       return ds;
      }
    
    

    Retirado desse link: http://support.microsoft.com/kb/306134

     

    Post um feedback ae

    ;) até mais

     


    Altieri Pereira http://altieripereira.blogspot.com/ ;)
    quinta-feira, 16 de junho de 2011 03:01
  • Coloca a tag [Serializable] sobre o seu methods
    Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC
    quinta-feira, 16 de junho de 2011 12:21