Entidades de seguimiento automático frente a entidades POCO

Resuelto Kumar asked hace 14 años • 4 respuestas

Estamos iniciando un nuevo producto basado en web en el que planeamos exponer nuestra lógica de negocios a través de servicios WCF. Usaremos ASP.NET 4.0, C#, EF 4.0. En el futuro queremos crear aplicaciones para iPhone y aplicaciones WPF basadas en los servicios. He estado leyendo mucho sobre el uso de POCO frente a entidades de seguimiento automático (STE) y, según tengo entendido, las STE no funcionan bien con el escenario web. ¿Alguien puede arrojar más luz sobre este tema?

Kumar avatar Sep 28 '10 23:09 Kumar
Aceptado

Para mí, STE es un concepto absolutamente equivocado. Es solo otra implementación de DataSet.

  • En la aplicación ASP.NET, deberá almacenar los STE en algún lugar entre las solicitudes. En la primera solicitud, consultará su fuente de datos para obtener STE y proporcionar datos en la página. En la siguiente solicitud (devolución de datos), querrá modificar STE con los datos devueltos por el navegador. Para admitir el seguimiento, deberá usar el mismo STE que en la primera solicitud => deberá almacenar STE en viewstate (si desea usar ASP.NET WebForms) o sesión.
  • STE es inútil para SOA o interoperabilidad. La lógica de seguimiento es parte de STE = se ejecuta en el cliente. Si expone STE en el servicio, inmediatamente espera que el lado del cliente utilice las mismas funciones de seguimiento incluidas en la lógica STE. Pero estas funciones no se proporcionan al otro lado automáticamente. En .NET los tienes porque compartes ensamblado con STE. Pero en otra plataforma tienes que explicar a los desarrolladores cómo implementar la lógica STE para que funcione de tu lado. Este será probablemente el caso más limitante para usted debido a la aplicación para iPhone.
Ladislav Mrnka avatar Sep 28 '2010 18:09 Ladislav Mrnka

Las entidades de seguimiento automático funcionan perfectamente en un escenario MVC Web con WCF. He estado involucrado en 2 proyectos usándolos (uno en producción, otro casi).

Con POCO, perdería cualquier seguimiento de cambios a través del cable, lo que crea mucho dolor adicional porque EF ahora tiene que volver a consultar la información de estado. Si utiliza EF y WCF STE, resuelve muchos problemas y hace que todo su proceso de persistencia sea realmente fluido.


¿Puede proporcionar una cita para este reclamo? "Las STE no funcionan bien con el escenario web"

John Farrell avatar Sep 28 '2010 18:09 John Farrell