visual studio net framework nhibernate

net - nhibernate visual studio 2017



Recuperar todos los registros en una tabla con nHibernate (1)

Necesito recuperar todos los registros en una tabla con nHibernate. Si tuviera la clave para todos los registros en la tabla, podría hacer un bucle y usar el método Get de nHibernate (aunque esto parece ineficaz) pero no tengo las claves. También podría usar FindAll pero esto requiere criterios o un procedimiento almacenado.

¿Cómo puedo obtener todos los registros de la mesa?


Las tablas SQL se asignan a las clases, por lo que para recuperar todos los registros de una tabla, se escribe una consulta (HQL o Criteria) que recupera todos los objetos para un tipo dado mapeado en esta tabla:

var products = session.CreateCriteria<Product>().List<Product>();

o usando HQL:

var products = session.CreateQuery("from " + typeof(Product)).List<Product>();

o LINQ:

var products = session.Linq<Product>().ToList() // 2.x contrib provider var products = session.Query<Product>().ToList() // 3.x integrated provider