Eine allgemeine Architektur Frage in Sitecore 6 ...Sitecores „Latest“ Item
Lassen Sie uns sagen, dass wir eine Situation, wo wir 10.000 Stück haben eine „Pressemitteilung“ Vorlage implementieren. Diese Artikel sind in Sitecore unter /sitecore/content/home/press/*
gespeichert. Auf unserer Homepage möchten wir einige Informationen zu den 3 letzten Pressemitteilungen anzeigen.
Wir suchen etwas Gleichwertiges zu SQL ist zu konstruieren:
SELECT TOP 3 * FROM PressReleases ORDER BY ReleaseDate
Lesen durch die Sitecores Abfrage Dokumentation, es klingt wie die Mehrheit dieser Abfrage muss in unserer C# Anwendung behandelt werden. Etwas wie:
public Item[] GetRecentPressReleases()
{
string query = "/sitecore/content/home/press/*";
Item[] items = Sitecore.Context.Database.SelectItems(query);
Array.Sort(items, new PressReleaseDateComparer());
return items.Take(3).ToArray();
}
es, dass Laden 10.000 Sitecores Elemente aus der Datenbank in dem Speicher scheinen würde und sie dann jedes Mal, Sortierung unsere Homepage getroffen wird aus Sicht der Leistung nicht akzeptabel wäre.
Gibt es eine effizientere Möglichkeit, diese Abfrage auszudrücken? Oder sollte ich mich auf Output-Caching und/oder Pre-Calculation konzentrieren?
Bitte aktualisieren Sie diese Links. –
@Alexy: Ihr Link ist kaputt. –