none
Syn Framework y archivo System.Data RRS feed

  • Pregunta

  • Hola, mi duda es con respecto a un error que me da Sync Framework
    Voy a intentar ser lo más escueto posible. Tengo una aplicación para PDA con una base de datos sdf en local y al final de mes paso los datos de la base de datos al ordenador.
    Mi pretensión es tener una base de datos en un servidor, que ya lo tengo contratado en un hosting con acceso a SQL Server, con las tablas y poder actualizar desde la PDA con Sync Framework.
    He creado un archivo con clases muy parecido al ejemplo de Microsoft http://msdn.microsoft.com/es-es/library/bb726043.aspx y creo una SampleSyncAgent que hereda de syncAgent, otra SampleClientSyncProvider que hereda de SqlCeClientSyncProvider, otra SampleServerSyncProvider que hereda de DbServerSyncProvider y el problema lo tengo con esta última clase con la connection, pues me dice que me falta una referencia a System.Data (que por supuesto la tengo desde el principio de la aplicación) pero en otra versión que contiene el tipo System.Data.IDbConnection y lo mismo me pasa con el SyncAdapter.SelectIncrementalInsertsCommand, que le falta la misma referencia pues contiene IDbCommand.
    Por supuesto al tener referenciada la otra System.Data no me deja referenciar ésta y si la cambio, no me funciona la aplicación pues necesita el otro archivo.
    He intentado crear una biblioteca de clases pero en este caso me da un error de que no tiene espacio en memoria para copiar todos los archivos y vamos tampoco me funciona.
    ¿La clase DbServerSyncProvider tiene que estar dentro de la aplicación de la PDA ?
    Estoy perdido y no sé como continuar el tema.
    ¿Alguien me puede ayudar a resolver este lío?

    Muchas gracias y espero con impaciencia alguna ayuda.
    Un saludo a todos

    sábado, 18 de septiembre de 2010 7:16

Todas las respuestas

  • Ahh, se me olvidó decir que si hago la aplicación para el ordenador con Windows, puedo añadir todas las referencias necesarias, sin problemas tal y como dice en http://msdn.microsoft.com/es-es/library/dd937137.aspx, pero si la aplicación es para Windows Mobile ya no puedo añadir las referencias, que no me aparecen en la pestaña de .Net y las tengo que estar buscando examinando entre las carpetas; sólo tengo todas las referencias de Syncronization si creo un proyecto para WCF para un servicio Web y según veo en http://msdn.microsoft.com/es-es/library/bb726015.aspx no es indispensable crear un servicio web para crear la aplicación para sincronizar y que la idea es utilizar un SmartDevice o similar pero que no es necesario un ordenador con Windows. ¿Será un error de Microsoft en el archivo de instalación de SynFramework? http://www.microsoft.com/downloads/details.aspx?FamilyId=ee6af141-79d0-4351-a4a0-ea89bb29dcf5&displaylang=es

    Gracias

    domingo, 19 de septiembre de 2010 7:49
  • ¿Se puede hacer una aplicación para Smart Devices con SQL Compact, para que se sincronice con Sync Framework contra una base de datos en un servidor SQL Server, sin necesitar Web Services?

    ¿Que referencias tengo que añadir al proyecto?

    Gracias y espero alguna respuesta que me pueda orientar.

    Saludos

    lunes, 4 de octubre de 2010 19:50
  • Buenas noches Jocayol.

     

    Por lo que puedo leer, tu cometido es insertar unos datos que se encuentran en un equipo móvil, dentro de una base de datos SQL Server. Ya sé que el uso de la sincronización es una manera muy elegante de hacer lo que me comentas. Pero por lo que puedo leer que indicas, te está resultando bastante complicado realizar tal función.

     

    Por que no lo planteas de una manera completamente distinta, algo menos elegante pero igual de efectiva. Porque no haces que tu dispositivo móvil se conecte mediante WiFi a la red donde se encuentra el equipo alojado. Que por lo que puedo entender se encuentra en un hosting ajeno a una red local. Conectas con esa base de datos y realizas las inserciones a la base de datos comodamente.

    No sé si te resultara una solución efectiva, pero a mi me parece estupenda, para evitar complicaciones con el Sync Framework, como indicas.

     

    En todo caso si no te resulta una buena solución, te podría echar un cable para enfrentarte al Sync Framework

     

    Saludos.

    lunes, 4 de octubre de 2010 22:31
  • Hola Jmmontero, gracias por tu respuesta.

    Si tienes razón que es posible conectar por wifi al servidor remoto la PDA y así es como lo he hecho con varias de las tablas en las que sólo hay carga, así que tengo que insertar, borrar y modificar los registros, comprobando los que han cambiado en el servidor desde la última actualización y/o inserción y/o borrado. Pero como te digo sólo es en una dirección.

    Ahora tengo que hacer lo mismo con otra tabla pero esta es bidireccional, contemplando los cambios en el servidor y en la PDA y lo mismo para las inserciones y borrados, con lo que se complica un poco y he supuesto que será más eficaz, más rápido y posiblemente con menos errores trabajando con Sync Framework. Pero y sobre todo es que soy "maño" y me cuesta esfuerzo rendirme y no conseguir hacerlo con Sync Framework, en donde parece bastante simple, pero me he atascado con el problema de las librerias y las referencias.

    Si no te causara mucha molestia, te agradecería mucho que me echaras un cable, para ver si lo consigo, aunque no sea mas que una "cabezonada", pero me gustaría poder aprenderlo, para el futuro poder utilizar Sync Framework.

     

    Un saludo y muchas gracias por la ayuda

    miércoles, 6 de octubre de 2010 21:54
  • Volviendo al tema, es que tengo que hacer modificaciones en los dos sentidos, en los dispositivos con Windows Mobile y en la base de datos remota, por lo que no sé como plantear el tema, ya que tendría que insertar los nuevos registros, que eso lo veo fácil, borrar que creo que no me plantea grandes problemas con una tabla accesoria y un desencadenador, pero en cambio no sé como plantear los registros cambiados, ya que tendría que recorrer uno por uno todos los registros y comprobar cual ha cambiado con respecto al servidor y con respecto al dispositivo móvil y esto lo veo un poco engorroso y supongo que lento.

    Vuelvo a plantearme Sync Framework.

    ¿Se puede hacer una aplicación para Smart Devices con SQL Compact, para que se sincronice con Sync Framework contra una base de datos en un servidor SQL Server, sin necesitar Web Services?

    ¿Que referencias tengo que añadir al proyecto?

    Gracias y espero esperanzado alguna respuesta.

     

    jueves, 28 de octubre de 2010 20:16
  • ¿Alguien me puede ayudar con SyncFramework?¿Es posible sincronizar el dispositivo móvil y la base de datos remota?

     

    Gracias de antemano

    sábado, 8 de enero de 2011 21:06