2016-11-08 2 views
1

brauche einen Vorschlag für Sitecore-Rendering, wo ich Glasmodell verwenden, um das Element zu rendern.Sitecore glassmapper Wie man die Datenquelle aus dem Rendering holt

Ich habe eine Seite und das hat viele Renderings und jede Wiedergabe hat Datenquelle damit verbunden.

Ich weiß, dass unten Aussage wird mir den aktuellen Kontext, nicht die Datenquelle Element.

var context = new SitecoreContext(); 
      Model = context.GetCurrentItem<HomePage>(); 

Was ist die beste Option, um meine Abfrage zu lösen? Ich habe durch Artikel this gegangen. Aber ich bin wirklich nicht mit dieser Methode überzeugt, da ich IoC (Windsor Castle) verwende und Unit-Testfälle für jede Methode schreiben muss. Ich muss vielleicht später diese Objekte verspotten. Ich suche nach dem Ansatz, wo ich Interface nicht die Klasse verwenden werde.

Schätzen Sie Ihre Hilfe.

Antwort

2

Wenn Ihr Controller von GlassController abgeleitet ist, können Sie GetDataSourceItem<I..>() verwenden. Dadurch erhalten Sie die Datenquelle.

+0

Genau das, was ich gesucht habe. Danke @Gatogordo – PaRsH

0

zu Gatogorodo Antwort Hinzufügen

, wenn Sie Controller von GlassController abgeleitet ist, oder wenn Sie in GlassView sind, können Sie this.DatasourceItem verwenden, um die Datenquelle zu erhalten.

this.GetDataSourceItem<Model>() erhalten Sie das gewünschte Modell, das eine der Basisvorlage für die Artikelvorlage sein könnte.

Verwandte Themen