Data set tipados - ainda
Estou quebrando a cabeça a dias
Sei criar um webservice
sei criar um dataset tipado
sei criar uma query com parametros baseada numa stored precidure - Funciona ao testar.
Não consigo:
1- passar dois parametros para o fill (que ja foi aterado para receber os mesmos e testado)
2- preencher o dataset
3 retornar um dataset preenchido pela webservice para ser usado num sistema windows.
Solicito por gentileza um exemlo simples porem completo. Pois estou apanhando feio
grato
Alejandro González
Curtidas 0
Respostas
[devmedia .net]
18/01/2009
Opa, blz ?
sobre suas perguntas é o seguinte...
1- passar dois parametros para o fill (que ja foi aterado para receber os mesmos e testado)
Não se passa parâmentro no fill, a passagem de parâmetro é na consulta , fill é apenas para preencher o dataset.
Esses parâmetros são passados no webservices, para que o mesmo busque os registros e os retorne.
2- preencher o dataset
Preencher um dataset ??
É só executar o fill !
3 retornar um dataset preenchido pela webservice para ser usado num sistema windows.
No retorno do webservice, você deve colocá-lo como dataset.
Eu lhe enviei esses exemplos no ultimo chamado.
Bom, aguarde que estou montando um exemplo para você e lhe envio mais tarde.
Abraços
Carlos Jr
GOSTEI 0
[devmedia .net]
18/01/2009
Opa, segue o exemplo
Para baixar o projeto exemplo: http://video.devmedia.com.br/CarlosJunior/Consultoria/Chamado1971.rar
Execute a solution dentro da pasta WSTeste.sln
Caso as imagens abaixo não aparece, baixe o documento de explicação : http://video.devmedia.com.br/CarlosJunior/Consultoria/Chamado1971.doc
Código Webservice
//MÉTODOS DO WEBSERVICE
[WebMethod]
public DataSet RetornaDataSet(string param1, int param2)
{
DataSet dsDados = new DataSet();
//Esta será a chamada da procedures e a passagem dos parâmetros
SqlCommand cmd = new SqlCommand("NOME_PROCEDURE");
cmd.Parameters.AddWithValue("@NOME_PARAMETRO1", param1);
cmd.Parameters.AddWithValue("@NOME_PARAMETRO2", param2);
SqlDataAdapter da = new SqlDataAdapter(cmd);
//Preenche o dataset de acordo com os dados retornados com as informações dos parâmetros
da.Fill(dsDados);
//Este é o dataset a ser retornado pelo webservices
return dsDados;
}
Para adicionar a referência ao WebService no projeto windows
Coloque o endereço do webservices – coloque o endereço do SEU WebService Caso seu WebServices seja seu para saber o endereço rode o projeto.
No projeto Windows coloque o código abaixo private void btnBuscarDados_Click(object sender, EventArgs e) { //Método para buscar dados string parametro1 = "Valor 1"; int parametro2 = 2; //DataSet de retorno não há necessidade de ser um dataset tipado //Caso queira um dataset tipado, o procedimento é o mesmo, bastando apenas criar o dataset como você já sabe DataSet dsRetorno = new DataSet(); //Chamada do Webservice ServiceReference1.ServiceSoapClient srv = new ServiceReference1.ServiceSoapClient(); //Dataset sendo preenchido com o retorno do método do webservice //Trabalhe com os dados do dataset da maneira que desejar dsRetorno = srv.RetornaDataSet(parametro1, parametro2); } Abraços Aguardo retorno Carlos Jr
Coloque o endereço do webservices – coloque o endereço do SEU WebService Caso seu WebServices seja seu para saber o endereço rode o projeto.
No projeto Windows coloque o código abaixo private void btnBuscarDados_Click(object sender, EventArgs e) { //Método para buscar dados string parametro1 = "Valor 1"; int parametro2 = 2; //DataSet de retorno não há necessidade de ser um dataset tipado //Caso queira um dataset tipado, o procedimento é o mesmo, bastando apenas criar o dataset como você já sabe DataSet dsRetorno = new DataSet(); //Chamada do Webservice ServiceReference1.ServiceSoapClient srv = new ServiceReference1.ServiceSoapClient(); //Dataset sendo preenchido com o retorno do método do webservice //Trabalhe com os dados do dataset da maneira que desejar dsRetorno = srv.RetornaDataSet(parametro1, parametro2); } Abraços Aguardo retorno Carlos Jr
GOSTEI 0
[devmedia .net]
18/01/2009
Bom dia,
estou aguardando seu contato para que possamos dar continuidade no chamado.
Seu problema foi resolvido ??
Abraços
Carlos Jr
GOSTEI 0