¿Linq to sql carga automáticamente las entidades asociadas?¿Linq to sql carga automáticamente las entidades asociadas?
Creo que sería, pero no puedo encontrar un artículo que lo indique como tal.
¿Linq to sql carga automáticamente las entidades asociadas?¿Linq to sql carga automáticamente las entidades asociadas?
Creo que sería, pero no puedo encontrar un artículo que lo indique como tal.
Sí, creo que sí. También tiene una característica/semántica de "carga con" que le permite cargar varias cosas en un enfoque de escopeta. Esto es útil cuando sabes que necesitarás datos relacionados junto con la entidad principal desde el principio, como precachear todos los datos que necesitarás para representar una sola página web, etc.
Sí, lazy loading está habilitado por defecto. Consulte this article.
Depende de cómo se defina "lazy-load".
Si dice
var person = (from p in db.People
where p.PersonId = pid
select p).First();
var spouse = person.Spouse; // based on the SpouseId FK
// back into the People table.
entonces eso sería precisamente "lazying carga" como el segundo objeto no se sale de la base de datos hasta que se hace referencia. Sin embargo, esto requerirá dos consultas de base de datos.
Sin embargo, si tuviera que decir,
var family = (from p in db.People
where p.PersonId = pid
select new
{
Name = p.Name,
SpouseName = p.Spouse.Name
}).First();
Entonces LINQ hará automáticamente la unión y la carga de la información de ambos registros en una sola consulta de base de datos.