There are a lot of questions. I will try to address every point.
Firstly, lazy loading is not always faster. Especially if you download ALL relationships.
Secondly, always avoid the "magic lines". I don't know if the Include method is available, which gets a lambda expression (this is an IQueryable extension) for EF 4.3. If this is not the case, you should implement it yourself as shown here and use:
context.Set<TEntity>().include(t => t.NavProp)
"A" entity "has a 1: n relationship to object" B ", but" B "has an n: m relationship to entity C. And if I hadn't fallen in love with" C "in" A ", then try calling context. SaveChanges (), then all data will be lost between "B" and "C"
I do not know what you had in mind. But if you want to select a sub-navigation property that belongs to an item in the list, you should use it in EF 5: (not sure if it works in 4.3)
context.Set<TEntity>().Include(t => t.Collection.Select(c => c.SubProp))
Other expressions can be found here.
If you clarify this quote, I can help more.
source share