sitecore
Jednorożec
Szukaj…
Wprowadzenie
Unicorn to narzędzie do Sitecore, które rozwiązuje problem przenoszenia szablonów, renderowania i innych elementów bazy danych między instancjami Sitecore. Staje się to problematyczne, gdy programiści mają własne instancje lokalne - pakiety są podatne na błędy i zwykle zapominane są w drodze do produkcji. Unicorn rozwiązuje ten problem, zapisując serializowane kopie elementów Sitecore na dysku wraz z kodem - w ten sposób kopia niezbędnych elementów bazy danych dla danej bazy kodu towarzyszy mu w kontroli źródła.
Uwagi
Przydatne informacje można znaleźć tutaj:
Początkowe ustawienia
- Będziesz potrzebować Sitecore w wersji 6.6 lub nowszej (w tym Sitecore 8.x ). Pamiętaj, że aby zachować zgodność z Sitecore 6.6, musisz mieć zainstalowany .NET 4.5.
- Zainstaluj Unicorn. Jest to tak proste, jak dodanie pakietu Unicorn NuGet do projektu.
PM> Zainstaluj pakiet Unicorn
- Po zainstalowaniu pakietu NuGet w programie Visual Studio pojawi się plik README, który pomoże w rozpoczęciu pracy.
Instalacja ręczna / instalacja ze źródła
- Sklonuj repozytorium
- Umieść kopię zestawu Sitecore.Kernel.dll w / lib / sitecore / v7 (dla v7 / v8)
- Zbuduj projekt dla swojej wersji Sitecore za pomocą Visual Studio 2012 lub nowszej wersji
- Skopiuj Unicorn.dll, Rainbow.dll, Rainbow.Storage.Sc.dll, Rainbow.Storage.Yaml.dll i Kamsar.WebConsole.dll do dowolnego projektu w dowolny sposób (odniesienie do projektu, jako odniesienie binarne itp.)
- Skopiuj standardowe pliki konfiguracyjne * .config do folderu App_Config \ Include \ Unicorn
- Skonfiguruj według własnych upodobań; plik instalacyjny README jest dobrym punktem wyjścia.
- Naciśnij $ yoursite / unicorn.aspx, aby wykonać początkową serializację skonfigurowanego predykatu
Architektura dostawcy danych
Dostawca danych Unicorn ma dwa składniki: implementację specyficzną dla bazy danych i implementację Unicorn.
Implementacja Unicorn to indywidualna konfiguracja zależności Unicorn, które otrzymują automatyczną serializację. Na przykład, jeśli serializujesz dwa ustawienia UnicornDataProvider
, potrzebujesz dwóch instancji UnicornDataProvider
- po jednym dla każdej implementacji IPredicate
.
Implementacja specyficzna dla bazy danych jest podklasą oryginalnego dostawcy danych Sitecore, który zapewnia kontener dla jednej lub więcej instancji UnicornDataProvider
. Po wyjęciu z pudełka dostarczany jest UnicornSqlServerDataProvider
. Możesz rzucić własną, jeśli korzystasz z Oracle. Ten dostawca skutecznie blokuje obsługę zdarzeń, umożliwiając Unicornowi przechwytywanie zmian przedmiotów, nawet jeśli używana jest zła klasa EventDisabler
.
Jeśli chcesz UnicornSqlServerDataProvider
wielu dostawców danych Unicorn z bazą danych, możesz utworzyć klasę wywodzącą się z UnicornSqlServerDataProvider
. W tej klasie możesz wybrać:
- Utwórz konstruktor, który wstrzykuje twojego dostawcę (-ów) za pomocą konstruktora podstawowego:
public MyDataProvider(string connectionString) :
base(connectionString, new UnicornDataProvider(), new
UnicornDataProvider(), ...)
- Utwórz konstruktor, który wstrzykuje dostawcom za pomocą kodu (jest to lepsze, jeśli musisz konstruować zależności itp., Które nie pasują dobrze do wywołania podstawowego):
public MyDataProvider(string connectionString) : base(connectionString, null)
{
AddUnicornDataProvider(new UnicornDataProvider());
// ...
}