Ленивая загрузка с WCF обычно не работает, потому что ваш метод выглядит так:
public List<MyPoco> GetData()
{
using (var context = new MyObjectContext())
{
return context.MyPocos.ToList();
}
}
Как вы видите, контекст закрыт в методе (вы должны где-то закрыть контекст). Но когда список будет сериализован, он попытается выполнить отложенную загрузку зависимых объектов => исключение, поскольку контекст уже закрыт. В WCF вы должны использовать готовую загрузку.