Zoeken…


Invoering

Unicorn is een hulpprogramma voor Sitecore dat het probleem van het verplaatsen van sjablonen, renderings en andere database-items tussen Sitecore-instanties oplost. Dit wordt problematisch wanneer ontwikkelaars hun eigen lokale instanties hebben - pakketten zijn foutgevoelig en worden vaak vergeten op weg naar productie. Unicorn lost dit probleem op door geserialiseerde kopieën van Sitecore-items samen met de code op schijf te schrijven - op deze manier vergezelt een kopie van de benodigde database-items voor een bepaalde codebase het bij bronbeheer.

Opmerkingen

Nuttige informatie vindt u hier:

Initiële setup

  • U hebt Sitecore 6.6 of hoger nodig (inclusief Sitecore 8.x ). Merk op dat voor Sitecore 6.6-compatibiliteit .NET 4.5 geïnstalleerd moet zijn.
  • Installeer eenhoorn. Dit is zo eenvoudig als het Unicorn NuGet-pakket aan uw project toevoegen.

PM> Installatie-pakket Eenhoorn

  • Wanneer u het NuGet-pakket installeert, verschijnt er een README-bestand in Visual Studio met hulp om u op weg te helpen.

Handmatige installatie / installeren vanaf bron

  • Kloon de repository
  • Plaats een kopie van uw Sitecore.Kernel.dll-assemblage in / lib / sitecore / v7 (voor v7 / v8)
  • Bouw het project voor uw Sitecore-versie met Visual Studio 2012 of hoger
  • Kopieer Unicorn.dll, Rainbow.dll, Rainbow.Storage.Sc.dll, Rainbow.Storage.Yaml.dll en Kamsar.WebConsole.dll naar elke gewenste manier (projectreferentie, als binaire referenties, enz.)
  • Kopieer Standard Config Files * .config naar de map App_Config \ include \ Unicorn
  • Configureer naar wens; het setup-README-bestand is een goed startpunt.
  • Druk op $ yoursite / unicorn.aspx om de eerste serialisatie van uw geconfigureerde predicaat uit te voeren

Data Provider Architecture

De Unicorn-gegevensprovider bestaat uit twee componenten: de database-specifieke implementatie en de Unicorn-implementatie.

De Unicorn-implementatie is een individuele configuratie van Unicorn-afhankelijkheden die automatische serialisatie krijgen. Als u bijvoorbeeld twee presets serialiseert, hebt u twee exemplaren van UnicornDataProvider - één voor elke IPredicate implementatie.

De database-specifieke implementatie is een subklasse van de oorspronkelijke Sitecore-gegevensprovider die een container biedt voor een of meer UnicornDataProvider instanties. Uit de doos wordt een UnicornSqlServerDataProvider meegeleverd. Je zou zelf kunnen rollen als je Oracle gebruikt. Deze provider is in feite een niet-blokkeerbare gebeurtenishandler waarmee Unicorn itemwijzigingen kan vastleggen, zelfs als de kwaadaardige klasse EventDisabler wordt gebruikt.

Als u meerdere Unicorn-gegevensproviders aan uw database wilt UnicornSqlServerDataProvider , maakt u een klasse die is afgeleid van UnicornSqlServerDataProvider . In deze klasse kun je kiezen om:

  • Maak een constructor die uw provider (s) injecteert met de basisconstructor:
public MyDataProvider(string connectionString) :
base(connectionString, new UnicornDataProvider(), new
UnicornDataProvider(), ...)
  • Maak een constructor die uw provider (s) injecteert met behulp van code (dit is beter als u afhankelijkheden, enz. Moet construeren die niet goed passen in een basisoproep):
public MyDataProvider(string connectionString) : base(connectionString, null)
 {
    AddUnicornDataProvider(new UnicornDataProvider());
    // ...
 }


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow