L'obtention de NHibernate erreur d'Exception de type " Antlr.Moment de l'exécution.NoViableAltException " a été levée

Je vais avoir quelques problèmes avec une requête sur une table qui contient un espace dans son nom, la

Si j'écris un code sql de la requête, il fonctionne très bien, c'est à dire SELECT * from [groupes], mais lors de l'utilisation de NHibernate CreateQuery tout se casse

using (ISession session = SessionFactory.OpenSession())
{
    IQuery query = session.CreateQuery("FROM [product groups]");
    IList<ProductGroups> results = query.List<ProductGroups>();
}

Va générer l'erreur

Exception de type " Antlr.Moment de l'exécution.NoViableAltException " a été levée.
près de la ligne 1, colonne 5 à

NHibernate.Hql.Ast.ANTLR.ErrorCounter.ThrowQueryException() à
NHibernate.Hql.Ast.ANTLR.HqlParseEngine.Parse()
...

Si j'utilise un CreateSQLQuery il fonctionne

ISQLQuery query = session.CreateSQLQuery("SELECT ID, Title, [Available as develop] FROM [product groups]").AddEntity(typeof(ProductGroups));
IList<ProductGroups> results = query.List<ProductGroups>();

Le fichier de mappage ressemble à ceci

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" auto-import="true">
  <class name="ListModels.ProductGroups, ListModels" lazy="true" table="Product groups">
    <id name="ID">
      <generator class="native" />
    </id>
    <property name="Title" />
    <property name="AvailableAsDevelopmentLicense" column="Available as develop" />
  </class>
</hibernate-mapping>

Pourquoi ne pas CreateQuery travail?

OriginalL'auteur Eric Herlitz | 2013-06-29