2016-06-12 23 views
4

Es ist möglich, Sitecore Vorlagen automatisch nur Codierungsmodelle zu generieren? Ich benutze Sitecore 8.0 und ich habe Glass Mapper Code First gesehen, aber ich kann nicht mehr Informationen dazu finden.Sitecore: Glass Mapper Code Zuerst

+0

TDS kann Code für Sie, das Modell generieren. Siehe http://hedgehogdevelopment.github.io/tds/chapter6.html –

+1

@JanBluemink Ich bin mir ziemlich sicher, dass das OP es andersherum möchte. Er möchte zuerst sein Modell codieren und dann Sitecore-Vorlagen aus den Modellklassen generieren. –

+0

Genau muss ich zuerst Code-Modell und dann generieren Sitecore-Vorlagen – Makler

Antwort

2

Sie können. Aber es wird nicht mit Glass zusammenhängen.

Code zuerst ist genau das, was Sitecore.PathFinder erreichen möchte. Es gibt jedoch noch nicht viele Informationen dazu.

Lassen Sie sich hier gestartet: https://github.com/JakobChristensen/Sitecore.Pathfinder

+0

Vielen Dank, ich werde es überprüfen – Makler

4

nicht sicher, warum nicht viele Informationen darüber gibt es, aber man kann auf jedem Fall erstes Modell/Code !. Ich verwende den Attributkonfigurationsansatz wie folgt:

[SitecoreType(true, "{generated guid}")] 
public class ExampleModel 
{ 
    [SitecoreField("{generated guid}", SitecoreFieldType.SingleLineText)] 
    public virtual string Title { get; set; } 
} 

Nun, wie das funktioniert. Der SitecoreType-Wert "true" für den ersten Parameter gibt an, dass er möglicherweise für den ersten Code verwendet wird. Es gibt einen GlassCodeFirstDataprovider mit einer Initialize-Methode, die in der Initialize-Pipeline von Sitecore ausgeführt wird. Diese Methode sammelt alle für codefirst markierten Konfigurationen und erstellt sie im sql-Datenprovider. Die Abschnitte und Felder sind im Speicher gespeichert. Es berücksichtigt auch die Vererbung (Basisvorlagen).

Ich glaube, Sie müssen zuerst Code in der GlassMapperScCustom-Klasse auskommentieren, die Sie erhalten, wenn Sie das Projekt über Nuget installieren. Die PostLoad-Methode enthält die wenigen Zeilen, die die Initialize-Methode jedes CodeFirstDataprovider ausführen.

Darüber hinaus würde ich raten, den Code zuerst nur für die Entwicklung zu verwenden. Sie können Pakete wie gewohnt erstellen und serialisieren und in einer anderen Umgebung bereitstellen, so dass Sie den Datenprovider (und mögliche Risiken) dort nicht benötigen.