¿Es posible utilizar filtros NHibernate para filtrar a través de referencias?

Ejemplo elaborado, pero digamos que tengo una de estas entidades:

public class Root
{
    public virtual Customer Customer { get; set; }
}

public class Customer
{
    public virtual CustomerData Data { get; set; }
}

public class CustomerData
{
    public virtual string FooName { get; set; }
}

Ahora, digamos que quiero crear un filtro para Root basado en el valor de FooName. Intuitivamente, probé esto en mi clase de FooMap. Usando mapeos Fluentes.

ApplyFilter("FooNameFilter", "Customer.Data.FooName in (:argument)");

Esto no funciona. Se emite una SqlClient.SqlException que indicaThe multi-part identifier "Customer.Data.FooName" could not be bound.

¿Hay alguna manera de hacer que los filtros funcionen de esta manera, o me veo forzado a mover esa lógica a todos?Query<Root>()s en cambio?

Respuestas a la pregunta(1)

Su respuesta a la pregunta