2016-04-09 5 views
1

Es ist eine abstrakte Basis SeiteHolen Sie sich alle Seiten von der bestimmten Seite in EPiServer geerbt

public abstract class BasePage : PageData 

Es gibt einige Seiten, die auf dieser Seite

public class ChildPage : BasePage 
public class ChildPage2 : BasePage 

Ich brauche alle abzurufen vererbt werden die Seiten, die von der BasePage geerbt werden. In PropertyCriteria Ich konnte nur ChildPage und ChildPage2 für die Suche von PageTypeID verwenden. So würde dieser Ansatz nicht löst das Problem in meinem Fall

Antwort

1

Ihre rentabelsten Optionen sind zu 1) abrufen alle Seiten (mit GetChildren oder getDescendants, je nach Inhaltsstruktur) des Basistypen oder 2) verwenden Suchen.

Episerver Find macht diese Art von Sache trivial, vorausgesetzt, Ihre Site verwendet tatsächlich Find. :/

Eine dritte (nicht empfohlen) Option alle Untertypen zu identifizieren und verwenden, um mehr FindPagesWithCriteria Anrufe wäre, aber die langsam wäre. FPWC ist vollständig nicht zwischengespeichert und führt zu DB-Aufrufen.

Persönlich verwende ich FindPagesWithCriteria nie für etwas anderes als bestimmte Verwaltungsfunktionen, die sich nicht mit dem Rendern der tatsächlichen Site befassen.

+1

Danke Ted, ich werde es versuchen –

Verwandte Themen