Поскольку LINQ уже почти везде, уверены ли вы, что вам нужно повторно реализовать Query Object?
В принципе, вы можете рассматривать все классы из System.Linq.Expressions как хорошую реализацию паттерна Query Object.
Я предлагаю шаблон объекта запроса Мартина Фаулера ( http://martinfowler.com /eaaCatalog/queryObject.html). Приобретите его книгу «Шаблоны архитектуры корпоративных приложений» , там вы найдете примеры реализации.