none
DATASET RRS feed

  • Pergunta

  • Olá Pessoal,

    Estou com um problema ao comsumir um WebService.

    Tenho um WebService que Acessa uma base MySQL. Até aí show de bola.

    Neste mesmo WebService disponibilizei uma base Access que também tem funções de consulta para ela. O WebService é simples. Consulto o DB com base nos parametros passados e retorno um Dataset.

    Agora do lado cliente (aplicação Windows Mobile) acesso os serviços Access sem problema, já os serviços MySQL ele não acha o provider do bendito banco no sistema.

    Meu problema está em querer evitar a necessidade de incluir o provider do MySQL ao projeto Windows Mobile (WM). Estou tendo problemas com a memória do Emulador ao inclui-lo.

    Existe alguma forma de no momendo do FILL do DataAdapter eu gravar estes dados do forma "genérica", sem levar no dataset informações do provider mySQL. o erro que é apresentado é o seguinte no lado Cliente:

    Server was unable to process request. ---> Could not load file or assembly 'MySql.Data, Version=6.3.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies. The system cannot find the file specified.

    Grato pela ajuda,

    Jefter Dórea

    sexta-feira, 14 de janeiro de 2011 13:53

Respostas

Todas as Respostas

  • Olá Jefter.

    Verifique se no Windows Mobile tem instalado e corretamente configurado um serviço de acesso para o MySQL. Se for algum script de conexao com erro, você pode dar uma conferida aki:

    http://www.connectionstrings.com/

    Espero ter ajudado. []'s

    sexta-feira, 14 de janeiro de 2011 14:01
  • Bom Dia RGDUARTE,

    Como mencionei acima, eu quero evitar a inclusão do provider do MySQL no projeto WM. O Uso da memória estoura.

    Eu não entendo o seguinte,  O WebService se conecta com o MySQL e repassa o resultado da consulta num Dataset.  Qual a necessidade do Cliente (que está recebendo o Dataset) de ter o provider do MySQL?  eles não conversam em momento algum.

    Olha o resultado do WS:

     <?xml version="1.0" encoding="utf-8" ?> 
    - <DataSet xmlns="http://tempuri.org/">
    - <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    - <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
    - <xs:complexType>
    - <xs:choice minOccurs="0" maxOccurs="unbounded">
    - <xs:element name="CLIENTES">
    - <xs:complexType>
    - <xs:sequence>
     <xs:element name="COD_BRF" type="xs:int" minOccurs="0" /> 
     <xs:element name="RAZAO" type="xs:string" minOccurs="0" /> 
     </xs:sequence>
     </xs:complexType>
     </xs:element>
     </xs:choice>
     </xs:complexType>
     </xs:element>
     </xs:schema>
    - <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
    - <NewDataSet xmlns="">
    - <CLIENTES diffgr:id="CLIENTES1" msdata:rowOrder="0">
     <COD_BRF>531962</COD_BRF> 
     <RAZAO>ALESSANDRA DOS SANTOS ALVES</RAZAO> 
     </CLIENTES>
    - <CLIENTES diffgr:id="CLIENTES2" msdata:rowOrder="1">
     <COD_BRF>532271</COD_BRF> 
     <RAZAO>RRB QUEIJOS E FRIOS LTDA</RAZAO> 
     </CLIENTES>
    - <CLIENTES diffgr:id="CLIENTES3" msdata:rowOrder="2">
     <COD_BRF>534781</COD_BRF> 
     <RAZAO>MORIVALDO PINHEIROS DO SANTOS</RAZAO> 
     </CLIENTES>
    - <CLIENTES diffgr:id="CLIENTES4" msdata:rowOrder="3">
     <COD_BRF>535059</COD_BRF> 
     <RAZAO>FRUCAZY COML DE ALIMENTOS LTDA</RAZAO> 
     </CLIENTES>
    - <CLIENTES diffgr:id="CLIENTES5" msdata:rowOrder="4">
     <COD_BRF>537711</COD_BRF> 
     <RAZAO>AEDSON ROSA DE SOUZA ME</RAZAO> 
     </CLIENTES>
    - <CLIENTES diffgr:id="CLIENTES6" msdata:rowOrder="5">
     <COD_BRF>538435</COD_BRF> 
     <RAZAO>COMERCIAL DE ALIM RODRIGUES DO CONI</RAZAO> 
     </CLIENTES>
    - <CLIENTES diffgr:id="CLIENTES7" msdata:rowOrder="6">
     <COD_BRF>541512</COD_BRF> 
     <RAZAO>COMERCIAL DE ALIMENTOS E PANIFICACA</RAZAO> 
     </CLIENTES>
    - <CLIENTES diffgr:id="CLIENTES8" msdata:rowOrder="7">
     <COD_BRF>544677</COD_BRF> 
     <RAZAO>ZENILDA SANTOS FERREIRA</RAZAO> 
     </CLIENTES>
     </NewDataSet>
     </diffgr:diffgram>
     </DataSet>
    
    sexta-feira, 14 de janeiro de 2011 14:14
  • Jefter,

    Como está a parte do código em que você consome esse webservice? O erro acontece exatamente na linha em que o webservice é chamado?


    André Alves de Lima
    Microsoft MVP - Client App Dev
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    sexta-feira, 14 de janeiro de 2011 15:38
    Moderador
  • Vais ter de aumentar a memoria....

    Tens de isntalar...Se nao, nao funciona.

     


    Just Be Humble Malange!
    sexta-feira, 14 de janeiro de 2011 15:39
  • Prezado(a),

    Estou migrando seu post para o fórum de Mobilidade.

    Por favor, das próximas vezes que tiver alguma dúvida relacionada a esse assunto, poste por lá.

    Obrigado pelo apoio.


    André Alves de Lima
    Microsoft MVP - Client App Dev
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    sexta-feira, 14 de janeiro de 2011 15:42
    Moderador
  • Caros Colegas,

    O WebService funciona que é uma beleza! O erro acontece na aplicação WM 6.0

    Nesta aplicação,  se eu consumir um serviço que me retorne dados de uma base ACCESS.  o grid mostra os dados corretamente.

    Se eu consumir os serviços que me retornam dados da base MySQL, acontece o erro:

    Server was unable to process request. ---> Could not load file or assembly 'MySql.Data, Version=6.3.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies. The system cannot find the file specified.

    Se eu incluo este provider na aplicação Mobile, ela "incha" ao ponde de esgotar os 32MB de memória do Emulator WM 6.  E eu não estou falando de memória RAM,  esta eu já elevei a 256MB,  mas Memory Storage é fixada em 32MB. 

    Eu achei um link interessante sobre o provider .net para MySQL,  eles mostram como adaptar o Conector .net para Compact Framework.
    Vou tentar atualizar e rodar.

    http://nicholas.piasecki.name/blog/2009/05/connecting-to-a-mysql-database-on-the-net-compact-framework/

    Eu só queria entender o porque da necessidade, já que é o WebService que faz a ligação com a base.

    Malange, vc tem como aumentar a memória?

    sexta-feira, 14 de janeiro de 2011 16:32
  • 15:15 hs

    Olá Jefter.

    Pra te falar a vdd eu nunca usei MySql, desculpa... mas eu ja fiz quase a msm coisa que vc; so que com DBF(Fox) e SQLServer:

    Exibia os dados dos DBF e nada do SQLServer (dava um erro diferente do seu, que nao lembro agora)... só funfou qdo (nao sei pq) eu tive a idéia de instalar e configurar o SQLClient for Mobile.

    Se nao tiver nada a ver, desculpe por tomar seu tempo.

    []'s

    15:28

    Lembrei: o nome correto era SQL Server Compact Edition.

    sexta-feira, 14 de janeiro de 2011 17:17
  • De modo algum brother,

    Toda ajuda é bem vinda.  Eu decidi me virar temporariamente com a Base Access, pois trata-se de um pequeno projeto de coleta de dados.

    Ele trás os clientes e vai devolvendo o resultado em cada atendimento.

    Mas vou manter a busca para manter os dados numa Base de dados mais robusta.  Pena que meu espaço no UOLHOST não me dá suporte ao SQLServer,  só pagando um "teco"a mais. hehehehe....

    Mas Galera,  Quem tiver uma luz me ajude....

    Jefter

    sexta-feira, 14 de janeiro de 2011 18:00
  • Jefter,

    Você testou o acesso so método que retorna o MySql de uma aplicação console ou windows form no desktop ? O erro parece estar no webservice e não no Windows Mobile.

    []s,


    Carlos dos Santos
    blog: www.carloscds.net 
    twitter: @cdssoftware

    • Marcado como Resposta Jefter Dórea segunda-feira, 17 de janeiro de 2011 11:06
    sábado, 15 de janeiro de 2011 02:49
  • Pessoal,

    André Alves Lima havia me perguntado sobre o WebService e eu testei e funcionava perfeitamente. Fui prá casa, tirei aquele fim de semana que todo bom Baiano conhece, e hoje mais uma vez sou indagado pelo Carlos dos Santos.  Tinha que tirar a prova dos nove, né?

    Abri o projeto do WS e a primeira coisa que percibi era a basta "BIN" não inclusa no projeto. Ela estava com aquela cor opaca. Inclui no projeto e tudo funcionou perfeitamente.

    O ERRO ESTAVA NO WEBSERVICE.

    Rodando local tudo fluia.  mas na publicação as DLLs não acompanhavam.

    Agradeço mais uma vez a ajuda dos colegas,

    Jefter Dórea

    segunda-feira, 17 de janeiro de 2011 11:06