Entity Framework - Separe y mantenga el gráfico de objetos relacionados

entity-framework

Pregunta

Acabo de comenzar a usar Entity Framework en lugar de mi NHiberante normal para ver cómo funciona EF y hasta ahora estoy teniendo muchos problemas, pero uno en particular es separar un objeto y mantener los objetos secundarios relacionados.
Compré el libro O'Reilly Entity Framework que le dice "sí, el marco de entidad por defecto no mantiene el gráfico de objetos cuando se separa", ¡pero no muestra cómo mantener el gráfico! Gracias O'Reilly eso es realmente útil.

De todos modos, si alguien puede ayudar eso sería genial, codifique a continuación:

        using (var creativeWorkshopEntities = new CreativeWorkshopEntities())
        {
            var q = from c in creativeWorkshopEntities.Job.Include("Files")
                    where c.Id == jobId
                    select c;

            var job = q.First();

            creativeWorkshopEntities.Detach(job);

            return job;
        }

¡Gracias!

Dan

Respuesta popular

Trate de usar una consulta NoTracking en su lugar. De esa forma, los objetos siempre se adjuntan, por lo que no es necesario que se "desprendan", que es cuando se destruye el gráfico:

es decir

using (var creativeWorkshopEntities = new CreativeWorkshopEntities())        
{            
    creativeWorkshopEntities.Job.MergeOption = MergeOption.NoTracking;
    var q = from c in creativeWorkshopEntities.Job.Include("Files")
            where c.Id == jobId                    
            select c;            
    var job = q.First();            
    return job;
} 

Espero que esto ayude

Alex

(Administrador del programa Entity Framework Team)



Related

Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué