none
Web Service (Recebendo Dados) RRS feed

  • Pergunta

  • Fala Pessoal, tudo bem ?
    Gostaria de saber se alguem ja implementou algum web service que recebe dados...

    Tenho uma aplicação desktop em Dephi, que precisa enviar alguns dados para o web-service, e gostaria de passar tudo de uma unica vez, ou seja, seria necessário passar alguma estrutura de dados, ou um Xml. Pensamos que enviar como XML seria melhor, então gostaria de saber como faço para receber o XML no Web Service em C#. É possivel atribuir uma string em formato XML em alguma instancia das classes da namespace System.Xml ???

    E quando ao lado do Delphi, alguem ja fez algo semelhante ???

    obs: Estou utilizando Delphi 7

    Obrigado desde já
    Até
    terça-feira, 11 de março de 2008 18:50

Todas as Respostas

  • A estrutura de dados náo é o XML ?

     

     

     

    C#

    http://imasters.uol.com.br/artigo/1859/asp/consumindo_webservice_-_retorno_de_dados_em_dataset_com_paginas_aspne/

     

    Adicionando a Referência para o Webservice

    Adicione a referência para o WebService que você criou na semana passada. Se você não lembra como fazer, volte algumas colunas anteriores, onde temos uma explicação detalhada. Caso queira utilizar o WebService do meu servidor, podem ficar a vontade.

    Adicionando o código do formulário (Webform Form)

    Substitua todo o código WebForm1.aspx.cs pelo código abaixo.

    colunas anteriores, onde temos uma explicação detalhada. Caso queira utilizar o WebService do meu servidor, podem ficar a vontade.

    Adicionando o código do formulário (Webform Form)

    Substitua todo o código WebForm1.aspx.cs pelo código abaixo.

    Code Snippet

    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;

    namespace WAADO
    {
    public class WebForm1 : System.Web.UI.Page
    {
    protected System.Web.UI.WebControls.DropDownList DropDownList1;
    protected System.Web.UI.WebControls.DataGrid DataGrid1;
    protected System.Web.UI.WebControls.Label Label1;
    private br.com.austin.www.WSAdo objWs;

    private void Page_Load(object sender, System.EventArgs e)
    {
    objWs = new br.com.austin.www.WSAdo();
    if (!IsPostBack)
    {
    DropDownList1.DataSource = objWs.GetEmpresa().Tables["EMPRESA"].DefaultView;
    DropDownList1.DataValueField = "COD";
    DropDownList1.DataTextField = "EMPRESA";
    DropDownList1.DataBind();
    }
    }

    #region Web Form Designer generated code
    override protected void OnInit(EventArgs e)
    {
    //
    // CODEGEN: This call is required by the ASP.NET Web Form Designer.
    //
    InitializeComponent();
    base.OnInit(e);
    }

    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    private void InitializeComponent()
    {
    this.DropDownList1.SelectedIndexChanged += new System.EventHandler(this.DropDownList1_SelectedIndexChanged);
    this.Load += new System.EventHandler(this.Page_Load);

    }
    #endregion

    private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e)
    {
    Label1.Text = DropDownList1.SelectedItem.Value.ToString() + " - " + DropDownList1.SelectedItem.Text;
    DataGrid1.DataSource = objWs.GetPedido(DropDownList1.SelectedItem.Value.ToString()).Tables["PEDIDOS"].DefaultView;
    DataGrid1.DataBind();
    }
    }
    }

     

     

    Uma consideração importante para este código é o uso do DataBind(), que faz com que os dados se tornem visíveis nos controles. Ele funciona como um Loop nos dados. Tente tirar esta linha e você verá que os seus controles não receberão os dados.

    TesteAo resultado acessando este link.

    Execute o programa e veja que ao selecionar uma empresa no DorpDownList ele irá carregar os pedidos da mesma no DataGrid. Caso queira faça o download do projeto completo logo abaixo, isso irá ajudar você no entendimento desta coluna.

    Link para download do projeto.

    Finalizando esta semana você aprendeu a consumir um WebService que retorna um DataSet de uma Fonte de Dados em ASP.Net. Até a próxima semana e para dúvida e sugestões envie e-mail para rogerio@austinrating.com.br.

     

    Quanto a String

     

    System.Xml.xmldocument.loadxml(Stringxml)

     

    System.data.dataset.ReadXml(Stringxml)

     

    Quanto ao Delphi - talvez algo ajude

    http://forums.microsoft.com/MSDN-BR/ShowPost.aspx?PostID=2565718&SiteID=21

    http://forums.microsoft.com/MSDN-BR/ShowPost.aspx?PostID=407255&SiteID=21

    http://www.linhadecodigo.com.br/Artigo.aspx?id=778

    http://www.drbob42.com/examines/examin51.htm

     

    terça-feira, 11 de março de 2008 20:48
  •  

    Tem um post chamado ADO.NET Dataset em Delphi Win32 aqui nestá mesma sessão  que mostra em linguagem Delphi.Net como carregar dados para ClientDataSet no Delphi Win32. Para retornar dados em xml basta devolver os dados do tipo DataSet em um WebService que ele vai gerar o XML automáticamente.

    Espero ter ajudado.

    quinta-feira, 3 de abril de 2008 18:54
  • Como faço para receber dados XHR da linguagem C
    quarta-feira, 22 de novembro de 2017 06:32