[英]Linq to NHibernate using Queryable.Where predicate
我正在查询使用LINQ到NHibernate的SQLite数据库。
Person
是包含ID和名称的实体:
public class Person
{
public Guid Id { get; private set; }
public string Name { get; private set; }
}
假设我的数据库表包含一个名称为“ John ”的个人。
该测试按预期工作:
var query = from item in session.Linq<Person>()
where (item.Name == "Mike")
select item;
// no such entity should exist
Assert.IsFalse(query.Any());
但这失败了:
var query = from item in session.Linq<Person>()
select item;
query.Where(item => item.Name == "Mike");
// following line actually returns the
// "John" entry
Assert.IsFalse(query.Any());
我想念什么?
调用Where
不会更改现有查询,它将创建一个新查询。 如果要使用新查询,则需要分配一些内容。
var query2 = query.Where(item => item.Name == "Mike");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.