none
Persistir una SQL CE en el emulador RRS feed

  • Pregunta

  • Buenas,

    Estoy haciendo una aplicación que lee de una fuente REST y guarda datos en una SQL CE almacenada en el isostore. El problema es que cada vez que cierro el emulador me encuentro con que me borra el fichero .sdf y no puedo probar la aplicación corréctamente.

    ¿Hay alguna forma de almacenar el fichero .sdf sin que se borre al cerrar el emulador?

    Muchas gracias.

    --

    Un saludo

    Juan Quijano

    martes, 17 de abril de 2012 18:45

Todas las respuestas

  • Hola Juan,

    No se si has visto estos link

    http://justinangel.net/WindowsPhone7EmulatorAutomation

    http://wp7explorer.codeplex.com/

    Te lo digo porque con esos dos link y este parrafo del blog de Yosue, creo que te puedes hacer una idea de por donde van los tiros en el emulador.

    El constructor de nuestra clase AppDbContext requiere un parámetro que contenga la cadena de conexión hacia la base de datos que deseamos usar. En Windows Phone 7.1 el formato de cadena de conexión es especial y distinto del que estamos acostumbrados normalmente. Como nuestra base de datos se encuentra en el almacenamiento aislado la cadena de conexión se compone de “Data Source=’isostore:/” y la ruta en el almacenamiento aislado donde está nuestro sdf:

    http://geeks.ms/blogs/jyeray/archive/2011/07/19/sql-server-ce-en-windows-phone-mango.aspx

    Hasta donde yo se por mi experiencia con el Isolated Storage y te hablo de hace tiempo, se borraba en el emulador, con lo cual el comportamiento que comentas puede ser normal.Te hablo de Windows Phone 7.0 no Mango, pero ocurría esto.

    En este otro link puedes ver lo que te comento.

    http://stackoverflow.com/questions/10053316/is-windows-phone-isolated-storage-permanent-when-i-close-my-emulator

    Saludos,


    phurtado
    Mi Blog Blog
    Sigueme en Twitter

    martes, 17 de abril de 2012 19:23
  • Buenass Pedro,

    No, si está claro que el isostorage se borra al cerrar el emulador. Pero mi duda es ¿cómo evitar esto?. ¿Cómo puedo probar con una persistencia que no desaparezca al cerrar el emulador?

    Para una mayor comprensión, el problema viene de que recojo datos de un servicio REST y que van cambiando cada X días. A veces varias veces al dia, a veces una vez por semana o por mes. Y quiero probar que recoge corréctamente los datos, que se dá cuenta de los cambios, que lo almacena y que lo visualiza.

    Por test todo está divino, pero me gustaria hacer pruebss de verdad y no quiero mantener el equipo encendido dias y dias... :)

    miércoles, 18 de abril de 2012 9:38
  • Buenas!

    Lamentablemente, no existe forma :( hagas lo que hagas, al cerrar el emulador se pierde su contenido.

    Solución, aunque no demasiado elegante y muy incomoda: usa el wp7explorer que recomienda Pedro para, al final de las pruebas guardarte el sdf en hdd, al dia siguiente cuando empieces a hacer pruebas, puedes sustituir el que te crea tu app de nuevo por el que te has guardado :(

    Lo se, es una guarrada, una "chapu", pero no nos queda otra con el emulador... otra cosa es que hagas las pruebas en el teléfono... creo que no te elimina el contenido cuando haces debug, solo si haces un deploy

    Un abrazo!


    MCTS - .NET 4.0 Windows Applications
    MCTS - .NET 4.0 Data Access
    MCTS - .NET 4.0 Service Communication Applications
    MCPD - .NET 4.0 Windows Developer
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter

    miércoles, 18 de abril de 2012 11:53
    Moderador
  • Hola Juan,

    Así y a bote pronto, se me ocurren dos alternativas.

    1. Que almacenes los datos en un servicio y que cargues estos desde este.

    2.Que utilices el storage de Azure en Windows Phone

    Mira este otro post de Yosue.

    http://geeks.ms/blogs/jyeray/archive/2011/01/28/windows-phone-7-primer-vistazo-a-cloud-service-sdk-project-hawaii.aspx

    http://www.jeffblankenburg.com/2011/11/17/31-days-of-mango-day-17-using-windows-azure/

    Porque creo que lo del emulador no será nada fácil de solucionar:)

    Saludos,


    phurtado
    Mi Blog Blog
    Sigueme en Twitter

    miércoles, 18 de abril de 2012 12:04