Ваше сообщение давно и у вас уже есть решение, но все же:
Насколько я понимаю вашу модель данных, внутреннего выбора будет достаточно:
SELECT * FROM courses WHERE parentid IS NOT NULL
Это дает вам все строки, у которых есть родительская строка (которые будут вашими конечными узлами).
Использование LINQ в LightSwitch PreprocessQuery () это будет что-то вроде:
query = query.Where<Cours>(c => c.ParentId != null);
или не использовать лямбду:
query = from c in query where c.ParentId != null select c;
Это работает, даже если у вас нет ".ChildCourses", чего у вас явно нет.