Как вручную загрузить связанные объекты в отношении N: N?

Я использую EF5, и когда отношение равно 1: N, если я хочу загрузить связанные сущности, я делаю следующее:

С T-SQL я загружаю из базы данных основные объекты с T-SQL, например:

select * 
from MainEntities 
where ...

с T-SQL загружаю связанные сущности

select * 
from RelatedEntities 
where IDMainEntity IN (---)

В этот момент EF заполняет навигацию по свойствам основных объектов связанными объектами. Кроме того, в локальном свойстве типа каждого объекта вdbContext У меня есть все сущности каждого типа.

Однако, если я делаю то же самое с отношением N: N, я неу меня есть сущность средней таблицы отношения, и когда я выполняю запросы, которые я имею в локальнойdbContext сущности каждого типа, но навигация по свойствам не заполняется.

Я хотел бы знать, почему и если существует какая-то альтернатива.

Я использую этот способ, потому что я хочу использовать T-SQL для создания динамических запросов. Если я использую готовую загрузку, я неУ меня такая же гибкость для динамических запросов, как и при использовании TSQL, и она менее эффективна. Если я использую явную загрузку I, чтобы выполнить N дополнительных запросов, по одной из каждой записи в результатах основного объекта. По-моему, у меня только один дополнительный запрос, потому что я получаю все связанные объекты одновременно. Если я использую отложенную загрузку, у меня та же проблема, N дополнительных запросов.

Почему EF не заполняет связанные свойства, когда отношение N: N?

Благодарю.

Ответы на вопрос(2)

Ваш ответ на вопрос