gpt4 book ai didi

tridion - SchemaTitleCriteria在SDL Tridion Broker查询中未产生任何结果

转载 作者:行者123 更新时间:2023-12-04 04:55:24 25 4
gpt4 key购买 nike

我有一个简单的SDL Tridion 2011 SP1代理查询,用于检索组件URI的列表。我所有的组件都嵌入在Pages上,而不使用动态组件模板。以下代码返回50个结果(这是预期的)。其中之一是URI tcm:123-456-16。

List<Criteria> criteria = new List<Criteria>();
criteria.Add(new ItemTypeCriteria(16));
criteria.Add(new PublicationCriteria(337));
Query query = new Query(CriteriaFactory.And(criteria.ToArray<Criteria>()));
String[] results = query.ExecuteQuery();

组件tcm:123-456-16基于名称为“新闻门户”的架构。我想向查询中添加其他条件,以便仅获取基于该架构的项目,因此尝试了以下代码:
List<Criteria> criteria = new List<Criteria>();
criteria.Add(new ItemTypeCriteria(16));
criteria.Add(new PublicationCriteria(337));
criteria.Add(new SchemaTitleCriteria("News Portal"));
Query query = new Query(CriteriaFactory.And(criteria.ToArray<Criteria>()));
String[] results = query.ExecuteQuery();

这根本不返回任何结果。我已经仔细检查了我的架构名称。这是预期的回应吗? SchemaTitleCriteria是否要求将组件发布为动态组件表示。任何建议将不胜感激。

最佳答案

DCP上的是和否。您无需将所有组件都发布为动态组件表示(DCP)。我们注意到了同样的情况,并观察到,如果您不基于架构发布至少一个DCP,则架构标题不会发布到Tridion Broker DB的Schemas表中(不确定它是设计使然)。一旦发布了基于模式的DCP,就存储了模式标题,随后的查询将起作用,但是在发布第一个DCP之前,您将一无所获。

但是,在实际情况下,您会进行代理查询以获取dcps,因此,除非有错误或有人错过了它,否则您不应看到此行为。

关于tridion - SchemaTitleCriteria在SDL Tridion Broker查询中未产生任何结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14530742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com