Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用nHibernate检索表中的所有记录_Nhibernate - Fatal编程技术网

使用nHibernate检索表中的所有记录

使用nHibernate检索表中的所有记录,nhibernate,Nhibernate,我需要用nHibernate检索表中的所有记录。如果我有表中所有记录的键,我可以循环并使用nHibernate的Get方法(虽然这似乎效率很低),但我没有键。我也可以使用FindAll,但这需要标准或存储过程 如何从表中获取所有记录?SQL表映射到类,因此为了从表中检索所有记录,您需要编写一个查询(HQL或条件),以获取映射到此表的给定类型的所有对象: var products = session.CreateCriteria<Product>().List<Product&g

我需要用nHibernate检索表中的所有记录。如果我有表中所有记录的键,我可以循环并使用nHibernate的
Get
方法(虽然这似乎效率很低),但我没有键。我也可以使用
FindAll
,但这需要标准或存储过程


如何从表中获取所有记录?

SQL表映射到类,因此为了从表中检索所有记录,您需要编写一个查询(HQL或条件),以获取映射到此表的给定类型的所有对象:

var products = session.CreateCriteria<Product>().List<Product>();
var products=session.CreateCriteria().List();
或使用HQL:

var products = session.CreateQuery("from " + typeof(Product)).List<Product>();
var products=session.CreateQuery(“from”+typeof(Product)).List();
或者林克:

var products = session.Linq<Product>().ToList() // 2.x contrib provider
var products = session.Query<Product>().ToList() // 3.x integrated provider
var products=session.Linq().ToList()//2.x contrib provider
var products=session.Query().ToList()//3.x集成提供程序

如果我理解正确,您基本上可以创建没有限制的标准?没错,这不是要求吗?是的。我只是想确定我知道发生了什么。谢谢