validar validacion usuarios net formularios formulario enviar ejemplos con autenticacion asp antes asp.net sqlite linq-to-sql offline

asp.net - validacion - validar formulario javascript antes de enviar



aplicación de formularios web que almacena datos fuera de línea usando sqlite (3)

Eso simplemente no es posible. No puede forzar su aplicación de formularios web que se ejecuta en un navegador para acceder a una base de datos local en el lado del cliente.

De alguna manera, para cumplir con sus requisitos, tendría que cambiar la arquitectura de su aplicación O proporcionar un canal adicional y separado para el trabajo fuera de línea. El canal adicional podría ser una aplicación html5 que utiliza el almacenamiento local, un cliente de Silverlight que utiliza una de las bases de datos de Silverlight del lado del cliente como Sterling o incluso una aplicación ClickOnce ganadora utilizando cualquier base de datos disponible en el lado del cliente.

Tengo una aplicación de formularios web asp.net que utiliza un servidor sql 2005 en un servidor remoto. Todos los controles están vinculados usando linq a sql.

Estoy tratando de proporcionar funcionalidad completa fuera de línea, así que me preguntaba si podría crear una base de datos sqlite como el servidor SQL sql, instalarlo en el dispositivo de los usuarios y luego cuando se pierde la conexión o el usuario quiere trabajar sin conexión, cambio el enlace al base de datos sqlite? Me imagino que descargaría toda la información del usuario a sqlite db cuando el usuario inicie sesión por primera vez y luego se sincronice más tarde.

¿Esto permitirá que los controles de datos aún funcionen correctamente cuando están desconectados, específicamente en un dispositivo móvil?

He investigado el almacenamiento local, etc., pero debo permitir que un usuario trabaje fuera de línea todo el día si es necesario. Además, tendría que hacer cambios importantes en todo el programa, que no es una opción.

Mi requisito es hacer que esta aplicación de formularios web asp.net trabaje fuera de línea sin cambios significativos.

He convertido la aplicación de asp.net 2008 a 2010 y ahora a 2012.

Tengo 3 meses para completar esta conversión y eso incluye aprender cualquier tecnología que se elija. Es una aplicación grande, por lo que no es mucho tiempo.

Cualquier sugerencia sería genial.

También me gustaría saber qué piensas sobre la base de datos sqlite propuesta.

Gracias


Con respecto al trabajo fuera de línea en el navegador, es posible que desee consultar las siguientes apis HTML5:

  • AppCache (carga todos los archivos requeridos del servidor, para que el sitio se inicie incluso si el servidor no está disponible).
  • IndexedDb . Esto permite el almacenamiento de datos fuera de línea, persistente en múltiples sesiones de navegador.

En la arquitectura descrita arriba, además de instalar sqlite, o alguna base de datos local separada del navegador, también necesitaría proporcionar un componente de "servidor" local (u otro servicio de Windows) con el que el navegador pudiera comunicarse. para habilitar la comunicación entre el navegador y la base de datos.

El siguiente diagrama muestra un ejemplo que funcionaría, pero estaría reinventando lo que ya está construido en HTML5 :


No estoy seguro de que esto sea posible. Primero, su aplicación web necesitaría un servidor para ejecutar solo para mostrar la página. Entonces necesitarías una base de datos local para que se conecte. Sincronizarlos no sería difícil. El gran problema es alojar la aplicación localmente para cada usuario.

En lugar de usar una aplicación web, sugeriría usar una aplicación de Windows que se conecte a una base de datos remota. En el caso de que no se pueda alcanzar el DB remoto, puede recurrir a una base de datos local (el sqlite db). Luego, cuando se restablece una conexión, puede sincronizar programáticamente los dos db. Esto se puede hacer creando lo que se denomina "Aplicaciones conectadas ocasionalmente". Aquí hay un buen artículo: http://www.codeproject.com/Articles/29459/Introduction-to-ADO-NET-Sync-Services