Una de las funciones más esperadas de Entity Framework 4 es la capacidad de utilizar POCO (Objetos Clair Old CLR) de una manera Ignorante de persistencia (es decir, no "saben" que se persisten con Entity Framework vs. otro mecanismo).¿Por qué se necesita "Reparación" para Persistencia Ignorante POCO en EF 4?
Estoy tratando de entender por qué es necesario realizar correcciones de asociación y utilizar FixupCollection en mi objeto comercial "simple". Ese requisito parece implicar que el objeto comercial no puede ignorar por completo el mecanismo de persistencia después de todo (de hecho, la palabra "corrección" parece que algo necesita ser arreglado/alterado para funcionar con el mecanismo de persistencia elegido).
Específicamente me refiero a la región Asociación Fixup que se genera por el ADO.NET POCO Entidad Generador, por ejemplo .:
#region Association Fixup
private void FixupImportFile(ImportFile previousValue)
{
if (previousValue != null && previousValue.Participants.Contains(this))
{
previousValue.Participants.Remove(this);
}
if (ImportFile != null)
{
if (!ImportFile.Participants.Contains(this))
{
ImportFile.Participants.Add(this);
}
if (ImportFileId != ImportFile.Id)
{
ImportFileId = ImportFile.Id;
}
}
}
#endregion
, así como el uso de FixupCollection. Otros ORM persistentes e ignorantes no tienen restricciones similares.
¿Esto se debe a decisiones de diseño fundamentales en EF? ¿Hay algún nivel de no ignorancia aquí para permanecer incluso en versiones posteriores de EF? ¿Existe alguna forma inteligente de ocultar esta dependencia de persistencia del desarrollador de POCO?
¿Cómo funciona esto en la práctica, de principio a fin? Por ejemplo, entiendo que recientemente se agregó soporte para ObservableCollection (que es necesario para Silverlight y WPF). ¿Hay errores en otras capas de software a partir de los requisitos de diseño de los objetos POCO compatibles con EF?
Eso es un buen material de fondo, gracias. –
El segundo enlace establece en la parte 'En Beta1 de Entity Framework 4.0, no se soluciona automáticamente la relación en este caso con las entidades POCO. Me pregunto si eso implica que la corrección automática ocurrirá uno de estos días. –
El enlace está roto ahora ... supuestamente migrado. – madannes