Вы пробовали что-то вроде?
session.QueryOver<Product>()
.UnderlyingCriteria.SetFetchMode("PropertyName", FetchMode.Eager);
Как я понимаю, QueryOver - это просто оболочка для Criteria, и у Criteria есть также нетипизированная / строковая версия установки режима выборки.
Обновление
Итак, ваш метод может выглядеть следующим образом:
public IQueryOver<TEntity, TEntity> AllIncluding(params string[] properties)
{
var queryOver = session.QueryOver<TEntity>();
var criteria = queryOver.UnderlyingCriteria;
foreach (var property in properties)
{
criteria.SetFetchMode(property, FetchMode.Eager);
}
return queryOver;
}