Orchard - 以编程方式创建查询
问题描述:
我在Orchard中创建自定义模块。在启用我的模块后,我想以编程方式创建查询。Orchard - 以编程方式创建查询
由于IDependency接口的实现,我在我的Migrations.cs文件中这样做了。
我能够创建查询,但我做我编程设置该查询的过滤器?
var announcementsQuery = _contentManager.Create("Query");
announcementsQuery.As<TitlePart>().Title = "Announcements";
_contentManager.Publish(announcementsQuery);
谢谢
的Jakub
答
我发现了如何做到这一点:
var announcementsQuery = _contentManager.Create("Query");
announcementsQuery.As<TitlePart>().Title = "Announcements";
announcementsQuery.As<QueryPart>().ContentItem.ContentType = "Announcement";
var filterGroupRecord = new FilterGroupRecord();
var filterRecord = new FilterRecord()
{
Category = "Content",
Type = "ContentTypes",
Description = "Announcement",
Position = 1,
State = "<Form><Description>Announcement</Description><ContentTypes>Announcement</ContentTypes></Form>"
};
filterGroupRecord.Filters.Insert(0, filterRecord);
announcementsQuery.As<QueryPart>().FilterGroups.Insert(0, filterGroupRecord);