これは簡単な方法で可能ですか、それともパラメーターとしてスキップ/テイクを追加するだけですか?
public IEnumerable<T> GetKittens<T>(Expression<Func<Kitten, bool>> predicate = null) where T : KittenViewModel, new()
{
var kittenModels = GetModels(); // IQueryable<T>
// how can I make the predicate say 'select the top 10' or
// 'skip 5 and take 5'
kittenModels = kittenModels.Where(predicate);
}