gpt4 book ai didi

orchardcms - Orchard - 查询内容项中的自定义字段

转载 作者:行者123 更新时间:2023-12-01 14:17:39 25 4
gpt4 key购买 nike

我有一个带有自定义字段“NewsDate”(DateTimeField) 和“Active”(BooleanField) 的内容类型“News”

现在我需要在 NewsDate 之前获得 3 个活跃的 atimes order desc

获取所有新闻,将它们制作成 toList() 并从那里操作数据不是解决方案。

附言我需要做类似的事情:

        var items = contentManager
.Query(Entities[PageType.Press])
.OrderByDescending<CommonPartRecord, DateTime?>(record => record.PublishedUtc)
.Slice(0, 3);

但不是 PublishedUTC,而是使用我的自定义字段“NewsDate”并添加 Active == true,但是由于 Orchard 架构将自定义数据存储在单独的字段中作为 XML 数据,这是不可能的。

更新:简而言之,我想从以下查询背后的代码生成:

DECLARE @temp as TABLE(id int, xmldata xml)
INSERT @temp VALUES(1,'<Data><News><NewsDate>07/14/2011 11:42:00</NewsDate><Link Title="" DisplayText="" Link="www.example.com" OpenInNewTab="True">www.example.com</Link></News></Data>')
INSERT @temp VALUES(2,'<Data><News><NewsDate>07/11/2011 12:11:00</NewsDate><Link Title="" DisplayText="" Link="www.example.com" OpenInNewTab="True">www.example.com</Link></News></Data>')
INSERT @temp VALUES(3,'<Data><News><NewsDate>02/21/2012 16:56:00</NewsDate><Link Title="" DisplayText="" Link="www.example.com" OpenInNewTab="True">www.example.com</Link><NewsLink></NewsLink></News></Data>')

SELECT
TOP 3 [id],
[xmldata].value('(Data/News/NewsDate)[1]', 'datetime') as NewsDate
FROM @temp
ORDER BY NewsDate DESC

附言我查看了 DynamicContentQueryTests 的代码,但是所有示例都使用了 Part,在我的例子中,Fields 就在 ContentItem 中:例如。新闻内容类型包含NewsDate字段(日期时间字段)和部分内容

非常感谢任何建议。

最佳答案

从 1.4 开始,可以通过 Projector 和基础索引表以及 Content Manager 上的新 API 查询字段。实际上,您最简单的选择可能是创建一个投影。

关于orchardcms - Orchard - 查询内容项中的自定义字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11364367/

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