En un entorno multiusuario: ¿Cómo se asegura de que todos los clientes vean cambios mutuos? ¿Cuál es la mejor manera de hacer esto?Técnica (s) en una aplicación multiusuario C# donde todos los clientes tienen sus datos actualizados desde una base de datos central
En el pasado creé una aplicación C# y la instalé en 2 pc. Se conectó a un servidor SQL Express central (la aplicación cliente trabajó con Entity Framework Code First como ORM). Cuando el cliente1 agregó un registro a la base de datos, esto no fue visible directamente para client2. Solo si el cliente2 recuperó todos los datos (actualización completa), el cambio fue visible.
Ahora estoy buscando una solución sobre cómo esta 'sincronización' (?) Puede o debe hacerse. Me gusta trabajar en Entity Framework Code Primero, sería bueno que una solución pudiera mantener esto. También la aplicación todavía está en una etapa muy temprana. Pensé en tener una base de datos central y varios clientes conectados a ella, pero no estoy seguro de si esta es una buena solución. Si sus sugerencias/soluciones requieren una aplicación de servidor central donde los clientes se conectan (y donde la aplicación del servidor maneja la base de datos) esto no sería un problema.
Si es posible, ¡sería muy útil una solución de muestra básica o algún código básico que muestre cómo trabajar siempre con los últimos datos!
preguntas similares:
- Entity Framework - Underlying data (in database) change notification
- Entity Framework data updates in a multi-user environment with central database
- Entity framework data context not in sync with database?
gracias de antemano
gracias por su sugerencia. Personalmente, esto no parece una buena forma de trabajar. La aplicación cliente carga todos los datos (debido a una cuadrícula y para buscar en la cuadrícula), por lo que significa que un localDB tiene una copia completa de un servidor sql (exprés). allí ya veo limitaciones (por ejemplo, el sitio de base de datos máximo de localDB vs sql server vs sql express). ¿Cualquier otra sugerencia? – juFo