воспринимайте ваш запрос как
SELECT categories.Id, count(categories.Id)
FROM categories inner join products on products.category_Id=categories.Id
group by categories.Id
Я думаю, что он даст тот же результат.
поиск в Google по
критериям nhibernate join
и
CreateAlias