Lurer på om det er mulig å dynamisk genererer sider i minnet og benytter disse sidene som resultatsett i søket? Bakgrunnen er at jeg ønsker å gjøre søk i en ekstern database som ikke har noen som helst kobling mot EPiServer. I EPiServer sin søkeside skal søket fra EPiServer og søket fra ekstern database migreres i samme resultatsett.
Oppsummert er det dette jeg ønsker:
1. Gjøre søk i ekstern database
2. Traversere retursettet og opprette sider i ”minnet”
3. Legge til disse sidene i filter-event’en til ”PageSearch” webkontrollen
Jeg ønsker ikke at de genererte sidene skal lagres i databasen.
På forhånd takk!
Ja, det går bra. Hvis du vil lage sider basert på en eksisterende sidetype, så bruker du EPDataFactory.GetDefaultPageData(...).
Eller, det kan gjøres enda enklere:
foreach (Result res in Results)
{
PageData page = new PageData();
page.Property["PageName"] = new PropertyString("Navn");
// ... more props
page.Property["PagePendingPublish"] = new PropertyBoolean(false);
pageDataCollection.Add( page );
}
Det viktige her er å sette PagePendingPublish egenskapen til false, slik at siden ikke tas bort av andre filter.
Steve