Orchardcms 检索分类字段的术语ID

Orchardcms 检索分类字段的术语ID,orchardcms,orchardcms-1.8,Orchardcms,Orchardcms 1.8,在访问与自定义内容类型的内容项关联的分类术语时,我遇到了与select N+1相关的性能问题 过去我通过预先获取所有相关的内容ID来解决类似的问题,因此我可以使用ContentManager的GetMany方法一次性获取所有内容ID。例如,这对MediaLibraryPickerField很有效,因为我可以使用字段上的ids属性轻松获取媒体内容ID。下面是一个与我所做的类似的示例: 我希望使用类似的方法获取分类术语,但我不知道如何获取内容项上分类字段的术语ID。似乎我只能访问延迟加载的术语部分,

在访问与自定义内容类型的内容项关联的分类术语时,我遇到了与select N+1相关的性能问题

过去我通过预先获取所有相关的内容ID来解决类似的问题,因此我可以使用ContentManager的GetMany方法一次性获取所有内容ID。例如,这对MediaLibraryPickerField很有效,因为我可以使用字段上的ids属性轻松获取媒体内容ID。下面是一个与我所做的类似的示例:

我希望使用类似的方法获取分类术语,但我不知道如何获取内容项上分类字段的术语ID。似乎我只能访问延迟加载的术语部分,这将导致select N+1,因为它们是为每个内容项检索的

有没有办法只获取分类法字段的术语ID而不检索整个术语?我花了一些时间在分类模块源代码中挖掘,但没有找到任何方法


有什么建议吗?

尝试注入
IRepository
。然后,您应该能够查询该服务提供的服务以外的内容。

您是否尝试注入
IRepository
?@BertrandLeRoy-感谢您的建议!我没有考虑过这一点。然后将其作为答案添加。