NHibernateを使用してテーブル内のすべてのレコードを取得する必要があります。テーブル内のすべてのレコードのキーがあれば、ループしてnHibernateのGet
メソッドを使用できますが(これは非効率的なようです)、キーがありません。 FindAll
を使用することもできますが、これには基準またはストアドプロシージャが必要です。
テーブルからすべてのレコードを取得するにはどうすればよいですか?
SQLテーブルはクラスにマップされるため、テーブルからすべてのレコードを取得するには、このテーブルにマップされた特定の型のすべてのオブジェクトをフェッチするクエリ(HQLまたはCriteria)を記述します。
var products = session.CreateCriteria<Product>().List<Product>();
またはHQLを使用する:
var products = session.CreateQuery("from " + typeof(Product)).List<Product>();
またはLINQ:
var products = session.Linq<Product>().ToList() // 2.x contrib provider
var products = session.Query<Product>().ToList() // 3.x integrated provider