1
I have this method within a service(asmx)
<WebMethod()> Public Function RetornarPrecoCSP(ByVal CodigoCliente As Long, ByVal CodigoProduto As String, ByVal QtdItem As Long, ByVal TipoVenda As Integer) As RetornoPreco()
    Dim obPrecos As New List(Of RetornoPreco)
    Dim BD As New SND.Data.AcessoDados
    Dim obDados As DataTable = Me.RetornarPreco(CodigoCliente, CodigoProduto, QtdItem, TipoVenda).Tables(0)
    If (obDados Is Nothing) Then
        Return Nothing
    End If
    Dim obLinha As DataRow
    For Each obLinha In obDados.Rows
        Dim obPreco As New RetornoPreco()
        Try
            obPreco.CDOrigem = Convert.ToInt32(obLinha.Item("CDOrigem"))
            obPreco.ValorProduto = Convert.ToDecimal(obLinha.Item("ValorProduto"))
            obPreco.ValorMultiplo = Convert.ToDecimal(obLinha.Item("ValorMultiplo"))
            obPreco.ValorMPdoBem = Convert.ToDecimal(obLinha.Item("ValorMPdoBem"))
            obPreco.AcimaDe = Convert.ToString(obLinha.Item("AcimaDe"))
            obPreco.ValorDolar = Convert.ToDecimal(obLinha.Item("ValorDolar"))
            obPreco.CodigoMoeda = Convert.ToInt32(obLinha.Item("CodigoMoeda"))
            obPreco.DataCotacao = Convert.ToDateTime(obLinha.Item("DataCotacao"))
            obPreco.CodigoMensagem = Convert.ToInt32(obLinha.Item("CodigoMensagem"))
            obPreco.Mensagem = Convert.ToString(obLinha.Item("Mensagem"))
            obPreco.CodTabelaPreco = Convert.ToInt32(obLinha.Item("TabelaPreco"))
            Dim obTable As DataTable = BD.AbreDS(String.Format("SELECT * FROM FaixasPrecoMaterial WHERE CodMaterial = '{0}' AND CodTabela = {1}", CodigoProduto, Convert.ToInt32(obLinha("TabelaPreco"))), "FaixasPreco").Tables("FaixasPreco")
            Dim obFaixas As New List(Of FaixaPreco)
            Dim obRow As DataRow
            For Each obRow In obTable.Rows
                Dim obEntry As New FaixaPreco
                obEntry.Minimo = obRow("InicioFaixa")
                obEntry.Maximo = obRow("TerminoFaixa")
                obEntry.Preco = obRow("ValorFaixa")
                obFaixas.Add(obEntry)
            Next
            obPreco.FaixasPreco = obFaixas.ToArray()
            obPrecos.Add(obPreco)
        Catch ex As Exception
            obPreco.Mensagem = ex.Message
            obPreco.CodigoMensagem = -1000
        End Try
    Next
    Return obPrecos.ToArray()
End Function
It returns only one product despite being a Toarray(). How do I return a list of products?
Don’t need code ready, just an idea of how to do.