A HQL:
"select p.Categoria as Categoria, count(p) as NumeroDePedidos from Produto p group by p.Categoria"
gera a Exception
"SqlException: A coluna 'Categoria.Id' é inválida na lista de seleção porque não está contida em uma função de agregação nem na cláusula GROUP BY."
E com isso não consigo avançar no curso. Como faço para que o NHibernate faça o agrupamento corretamente e traga a lista de entidades da forma como o Victor demonstra no vídeo?
Estou utilizando o SQL Server 2012 para o curso.
Os .XML utilizados.:
Produto.hbm.xml
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="Loja"
namespace="Loja.Entidades">
<class name="Produto">
<id name="Id">
<generator class="identity"/>
</id>
<property name="Nome"/>
<property name="Preco"/>
<many-to-one name="Categoria" column="CategoriaId" class="Categoria" not-null="true" fetch="join"/>
</class>
</hibernate-mapping>
Categoria.hbm.xml
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="Loja"
namespace="Loja.Entidades">`
<class name="Categoria">
<id name="Id">
<generator class="identity"/>
</id>
<property name="Nome"/>
<!--propriedade fetch pode ser SELECT (lazy load) ou JOIN (eager load)-->
<bag name="Produtos" fetch="join">
<key column="CategoriaId"/>
<one-to-many class="Produto"/>
</bag>
</class>
</hibernate-mapping>
hibernate.cfg.xml
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="connection.driver_class">
NHibernate.Driver.SqlClientDriver
</property>
<property name="connection.provider">
NHibernate.Connection.DriverConnectionProvider
</property>
<property name="dialect">
NHibernate.Dialect.MsSql2012Dialect
</property>
<property name="connection.connection_string">
Server=.\sqlexpress;Database=loja;User Id=sa;Password=***********;
</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property>
</session-factory>
</hibernate-configuration>