Sök…


Introduktion

Unicorn är ett verktyg för Sitecore som löser problemet med att flytta mallar, återgivningar och andra databasobjekt mellan Sitecore-instanser. Detta blir problematiskt när utvecklare har sina egna lokala instanser - paket är felaktiga och tenderar att glömmas på väg till produktion. Unicorn löser problemet genom att skriva seriekopior av Sitecore-artiklar till disken tillsammans med koden - på detta sätt åtföljer en kopia av de nödvändiga databasartiklarna för en given kodbas i källkontrollen.

Anmärkningar

Användbar information kan hittas här:

Första installationen

  • Du behöver Sitecore 6.6 eller senare (inklusive Sitecore 8.x ). Observera att för Sitecore 6.6-kompatibilitet måste du ha .NET 4.5 installerat.
  • Installera Unicorn. Detta är lika enkelt som att lägga till Unicorn NuGet-paketet till ditt projekt.

PM> Installera-paket Unicorn

  • När du installerar NuGet-paketet kommer en README-fil att dyka upp i Visual Studio med hjälp för att komma igång.

Manuell installation / installation från källan

  • Klona förvaret
  • Placera en kopia av din Sitecore.Kernel.dll-enhet i / lib / sitecore / v7 (för v7 / v8)
  • Bygg projektet för din Sitecore-version med Visual Studio 2012 eller senare
  • Kopiera Unicorn.dll, Rainbow.dll, Rainbow.Storage.Sc.dll, Rainbow.Storage.Yaml.dll och Kamsar.WebConsole.dll till ditt huvudprojekt på vilket sätt du vill (projektreferens, som binära referenser osv.)
  • Kopiera standardkonfigurationsfiler * .config till mappen App_Config \ Include \ Unicorn
  • Konfigurera efter din smak; installationen av README-filen är en bra utgångspunkt.
  • Tryck på $ yoursite / unicorn.aspx för att utföra den initiala serialiseringen av ditt konfigurerade predikat

Dataleverantörsarkitektur

Det finns två komponenter till Unicorn-dataleverantören: den databasspecifika implementeringen och Unicorn-implementeringen.

Unicorn-implementeringen är en enskild konfiguration av Unicorn-beroenden som får automatisk serialisering. Om du till exempel serialiserade två förinställningar skulle du behöva två instanser av UnicornDataProvider - ett för varje IPredicate implementering.

Den databasspecifika implementeringen är en underklass för den ursprungliga Sitecore-dataleverantören som tillhandahåller en behållare för en eller flera UnicornDataProvider instanser. Ut ur lådan finns en UnicornSqlServerDataProvider . Du kan rulla din egen om du är på Oracle. Denna leverantör är i själva verket en oblockbar händelseshanterare som gör att Unicorn kan fånga förändringar av objekt även om den onda EventDisabler klassen används.

Om du vill koppla flera datorleverantörer till din databas skapar du en klass som härrör från UnicornSqlServerDataProvider . I den här klassen kan du välja att:

  • Skapa en konstruktör som injicerar din leverantör (er) med baskonstruktorn:
public MyDataProvider(string connectionString) :
base(connectionString, new UnicornDataProvider(), new
UnicornDataProvider(), ...)
  • Skapa en konstruktör som injicerar din leverantör (er) med hjälp av kod (detta är bättre om du måste konstruera beroenden osv. Som inte passar bra i ett bassamtal):
public MyDataProvider(string connectionString) : base(connectionString, null)
 {
    AddUnicornDataProvider(new UnicornDataProvider());
    // ...
 }


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow