nHibernate:将Linq查询转换为存在嵌套查询和列表的已分离条件

时间:2018-10-02 22:09:51

标签: linq nhibernate nested associations

这是我的第一篇文章,因此请您原谅我的任何错误。

我希望将Linq查询转换为nHibernate的已发布条件。

对于执行此嵌套查询的简洁答案,我遇到了很多麻烦(整天都在搜索),目前在Linq中。我发现了很多零散的信息,但是我不能完全把它们放在一起。

为此目的,我的班级布局:

Sheet --> Sections --> Questions.Type {string}

基本上,工作表包含一个部分列表,其中包含一个问题列表。 Questions有一个字段“ Type”,它是一个字符串,我想将其置零。

LinQ

Query<Sheet>()
.Where (x.Sections.Any(section=>section.Questions.Any(q => q 
 is MultiChoice && ((MultiChoice)q).NativeValue.Id == anyInt))));

因此,基本上,我想检查问题(q)的类型是MultiChoice并等于我在那里输入的int值。不过,我真正的问题只是进入子对象级别。

到目前为止,我听说过有人提到对象内部对象的关联。如果以DetatchedCriteria的形式显示此语句的示例,我想我会学得最快。我有很多这样的情况要处理,但我认为这里可以举出一个很好的例子。

我使用了简化的班级图表,因为它们很大,但这是相关的部分。请让我知道是否需要更多信息。

我是nHibernate的新手,但到目前为止,在完成直接分离标准方面已经取得了一些成功,包括.Add限制和.Disjunction()类型,据我所知。

0 个答案:

没有答案