我正在上课类似
foo
{
Dictionary<string, Blubb> blubbDict {get;set;}
Dictionary<Bar, string> barDict {get;set;}
}
现在我想加载数据库中的所有对象,其中blubbDict包含一个键“FooBar” 并且barDict包含我在List barList中本地拥有的任何对象Bar。
到目前为止我得到了什么:
var fooQuery = from c in session.Query<Foo>()
where c.blubbDict.ContainsKey("FooBar")
select c;
到目前为止有效。 但是我的最后一个条件呢。我只想要两个条件符合“FooBar”的Foo对象,而barDict的键在我的本地列表中。
任何人都可以帮助我吗?我无法理解这个问题。
答案 0 :(得分:2)
从未尝试过这样做,所以我不确定Linq For NH支持它,但你可以试试:
var fooQuery = session.Query<Foo>()
.Where(c => c.blubbDict.ContainsKey("FooBar"))
.Where(c => barList.Any(b => c.barDict.ContainsKey(b)));