Могу ли я сгенерировать выражение linq динамически в C #?

В настоящее время у меня есть кусок Linq, который выглядит примерно так;

List<dynamic> childrenToBeRemoved = this.ItemsSource.Where(o => o.ParentID == "1234").ToList();

где ItemsSource - это ObservableCollection динамики.

Это работает нормально, но проблема, с которой я столкнулся, состоит в том, что ParentID - это свойство, которое может изменяться. Например. это может быть названо ParentPkey или ParentKey и т. д.

Могу ли я создать выражение, в котором я могу указать свойство, которое я хочу использовать в моем сравнении?

Я пытался использовать динамический linq, но он не работает, используя набор динамиков, отлично работает с набором pocos.

Спасибо...