如何防止 Glass Mapper 做 Sitecore 快速查询?

How to prevent Glass Mapper doing Sitecore fast query?

当我执行 ISitecoreContext.Query 时,如果查询包含 [@@templatename='some_name'],例如:

"/sitecore/Content/Home/*[@@templatename='some_name']"

查询结果遵循内容树中的顺序。

否则像下面这样:

"/sitecore/Content/Home/*"

排序不符合内容树顺序。

Glass Mapper 是否会自动切换到 Sitecore 快速查询,如何防止这种情况发生? (更好的是我不必在排序顺序字段中解决这个问题...)

Glass 不会更改树列表中项目的排序顺序,因此我不确定是什么原因造成的。此外,Glass 不会使用快速查询,除非您指示它使用。

测试这是否是 Glass 错误的最佳方法是使用原始 Sitecore API。要测试您的查询,请使用 Database.SelectItems 并使用标准 Sitecore.Data.Fields.MultilistField.

测试树列表

如果您注意到 SC 和 Glass return 之间的差异,请在 Github 上提出错误。