Sitecore-Daten werden in mehreren Datenbanken gespeichert. Aus der Sicht eines Webentwicklers sind die beiden am häufigsten verwendeten Master, die die Daten enthalten, die im Content Manager bearbeitet werden, und das Web, das die Daten speichert, die zur Anzeige der Website verwendet werden.
Auf Datenbanken kann über die Datenbank-Klasse zugegriffen werden. einen Verweis auf eine Datenbank zu erhalten, verwenden Sie die Factory-Klasse, wie in:
Sitecore.Data.Database master =
Sitecore.Configuration.Factory.GetDatabase("master");
Die Datenbanknamen und Implementierungsdetails werden in der web.config unter dem Abschnitt angegeben.
Wenn der Benutzercode von Sitecore aufgerufen wird, wird automatisch eine sogenannte Kontextdatenbank zugewiesen. Sie können diese Datenbank zugreifen, indem Sie die Context-Klasse, wie in:
Sitecore.Data.Database current = Sitecore.Context.Database;
Wenn der Code auf der Website ausführt (dh in einem Layout oder eine xsl-Erweiterung), wird die Kontextdatenbank Web sein. Wenn der Code im Content Manager ausgeführt wird, ist die Kontextdatenbank der Kern. Die Core-Datenbank enthält Daten, die vom Content Manager benötigt werden.
Zugriff auf die Datenbank innerhalb des Content Manager bearbeitet werden, können Sie
Database content = Sitecore.Context.ContentDatabase;
Die Content Eigenschaft ist leer, verwenden, wenn in der Web-Site Kontext ausgeführt wird. Nur Inhaltseditoren (z. B. der Inhaltsmanager) unterstützen diese Eigenschaft normalerweise.
Code auf der Website wird nicht immer die "Web" -Datenbank verwenden .. wie es in der Website-Definition definiert ist, kann es alles aufgerufen werden. Einige Implementierungen verwenden mehrere Publishing-Ziele für mehrere Datenbanken. – Gatogordo
Ja, ich stimme dir vollkommen zu. –