Extension de NHibernate pour prendre en charge les jointures personnalisées pour le text intégral

Nous avons une application .NET fortement basée sur une couche d'access aux données pilotée par NHibernate, utilisant à la fois les API Criteria et QueryOver pour interroger une database SQL Server 2008. L'exigence est d'introduire des filters de requête basés sur des capacités Microsoft SQL Server FullText natives avec le classment.

En traduisant cela en SQL, nous avons quelque chose comme ça.

SELECT * FROM entities INNER JOIN FREETEXTTABLE(entities, ft_column, "some ft query") ft_tbl ON entities.Id = ft_tbl.[KEY] ORDER BY ft_tbl.[RANK] DESC 

Je souligne que nous devons utiliser la fonction table FREETEXT, pas celle scalaire FREETEXT ici.

Nous ne pouvons pas utiliser un critère de sous-requête, car nous devons faire la pagination des résultats classés par rang.

Maintenant, comment puis-je étendre NHibernate pour introduire le support d'une telle jointure personnalisée dans les API Criteria et QueryOver?

J'ai trouvé les sources de NHibernate pour find le meilleur point d'extension pour cela, comme cela a déjà été fait par le passé mais cette fois je n'ai pas réussi, donc je me tourne vers les experts de NHibernate.

Merci d'avance.