Module Orchard-以编程方式创建查询

Module Orchard-以编程方式创建查询,module,orchardcms,Module,Orchardcms,我正在Orchard中创建一个自定义模块。启用模块后,我希望以编程方式创建查询 由于实现了IDependency接口,我在Migrations.cs文件中这样做了 我可以创建查询,但我可以吗?我可以通过编程设置该查询的筛选器吗 var announcementsQuery = _contentManager.Create("Query"); announcementsQuery.As<TitlePart>().Title = "Announcements"; _contentMana

我正在Orchard中创建一个自定义模块。启用模块后,我希望以编程方式创建查询

由于实现了IDependency接口,我在Migrations.cs文件中这样做了

我可以创建查询,但我可以吗?我可以通过编程设置该查询的筛选器吗

var announcementsQuery = _contentManager.Create("Query");
announcementsQuery.As<TitlePart>().Title = "Announcements";
_contentManager.Publish(announcementsQuery);
var announcementsQuery=\u contentManager.Create(“查询”);
announcementsQuery.As().Title=“公告”;
_contentManager.Publish(announcementsQuery);

我发现了如何做到这一点:

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);
var announcementsQuery=\u contentManager.Create(“查询”);
announcementsQuery.As().Title=“公告”;
announcementsQuery.As().ContentItem.ContentType=“Announcement”;
var filterGroupRecord=新的filterGroupRecord();
var filterRecord=新的filterRecord()
{
Category=“Content”,
Type=“ContentTypes”,
Description=“公告”,
位置=1,
State=“AnnouncementAnnouncement”
};
filterGroupRecord.Filters.Insert(0,filterRecord);
announcementsQuery.As().FilterGroups.Insert(0,filterGroupRecord);