у меня есть что-то вроде этого:EF Code First + ленивая загрузка, проектор не работает, как ожидалось
var tmp =_forumsDb.Threads
.Where(t => t.Id == variable)
.Select(t => new { Thread = t, Posts = t.Posts.Take(1) })
.Single();
Теперь, я ожидал tmp.Thread.Posts.Count();
быть 1, но он принимает все сообщения, которые я есть в базе данных. Можно ли использовать проекцию, которая занимает явное количество сообщений, делать это в одном запросе без отключения ленивой загрузки?
Edit: Я пытался сделать что-то вроде этого, но это не работает, либо:
var tmp =_forumsDb.Threads
.Where(t => t.Id == variable)
.Select(t => new { Thread = t, Posts = t.Posts.OrderBy(p => p.DateCreated).Take(1) })
.Select(t => t.Thread)
.Single();
Я думаю, что это законный вопрос и не заслуживает нисходящего. – rcdmk
Я считаю, что ответ на ваш вопрос просто: Нет. Почему бы вам не отключить ленивую загрузку? Вы хотите это для других свойств навигации объекта 'Thread'? – Slauma