2013-03-19 6 views
1

Je crée un module personnalisé dans Orchard. Après avoir activé mon module, je voudrais créer une requête par programme. Je le fais dans mon fichier Migrations.cs grâce à l'implémentation de l'interface IDependency.Orchard - Créer une requête par programme

Je suis capable de créer la requête, mais est-ce que j'ai programmé les filtres de cette requête?

var announcementsQuery = _contentManager.Create("Query"); 
announcementsQuery.As<TitlePart>().Title = "Announcements"; 
_contentManager.Publish(announcementsQuery); 

Merci,

Jakub

Répondre

2

j'ai découvert comment faire:

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);