果园通过分类学获得内容

时间:2015-07-22 07:59:07

标签: c# linq orchardcms orchard-modules

我试图通过分类法获取一些内容,这是内容的一部分/这就是我所拥有的内容:

var taxonomyTerms = _taxonomyService.GetTerms(taxonomy.Id).Where(t =>      termsToSearch.Contains(t.Name)).ToList();

var listOfTermsIds= taxonomyTerms.Select(x => x.Id).ToList();
//works well until here, I have my list of terms ids

var originalContentItems = _cm
.Query<GenericContentPart, GenericContentRecord>()
.Join<TermsPartRecord>().Where(l => !l.Terms.Select(t => t.TermRecord.Id).Except(listOfTermsIds).Any()).List();
//this returns no records

我设法用foreach做到了这一点,但我想用表达式做同样的事情。问题是最后一段代码没有给我任何记录。

任何帮助?

1 个答案:

答案 0 :(得分:0)

我发现了问题:

contentItems = _cm
.Query<GenericContentPart, GenericContentRecord>()
.Join<TermsPartRecord>().ForPart<TermsPart>().List()
.Where(l => !listOfTermsIds.Except(l.Terms.Select(t => t.TermRecord.Id).ToList()).Any());

感谢。