Если бы вы взялись за эту задачу, вы, по сути, выполняли бы работу компилятора (взятие текстового представления выражения и создание из него дерева выражений. Это большая работа и, вероятно, не стоит вашего времениПервая мысль, которая приходит на ум, - это иметь в запросе linq другой тип, а затем компилировать его на лету. Очевидным недостатком этого является то, что как только сборка загружается в память, вы не можете ее выгрузить (если вы неначать использовать AppDomains), так что это в основном приведет к утечке памяти.
Поскольку вы используете Entity Framework, лучшим ответом, вероятно, будет использование ESQL, http://innocraft.spaces.live.com/blog/cns!919A8CAC315ADF82!239.entry. С этим всегда можно работать втекстовый формат и Entity Framework проанализирует его для вас и выполнит запрос во время выполнения.
HTH