sitecore
единорог
Поиск…
Вступление
Unicorn - это утилита Sitecore, которая решает проблему перемещения шаблонов, рендеринга и других элементов базы данных между экземплярами Sitecore. Это становится проблематичным, когда разработчики имеют свои собственные локальные экземпляры - пакеты подвержены ошибкам и, как правило, забываются на пути к производству. Unicorn решает эту проблему, записывая сериализованные копии элементов Sitecore на диск вместе с кодом - таким образом, копия необходимых элементов базы данных для данной кодовой базы сопровождает ее в исходном контроле.
замечания
Полезную информацию можно найти здесь:
Начальная настройка
- Вам понадобится Sitecore 6.6 или новее (включая Sitecore 8.x ). Обратите внимание, что для совместимости Sitecore 6.6 у вас должен быть установлен .NET 4.5.
- Установите Единорог. Это так же просто, как добавление пакета Unicorn NuGet к вашему проекту.
PM> Install-Package Единорог
- Когда вы устанавливаете пакет NuGet, в Visual Studio появится файл README с помощью которого вы начнете.
Ручная установка / установка из источника
- Клонировать хранилище
- Поместите копию сборки Sitecore.Kernel.dll в / lib / sitecore / v7 (для v7 / v8)
- Создайте проект для своей Sitecore версии с помощью Visual Studio 2012 или более поздней версии
- Скопируйте Unicorn.dll, Rainbow.dll, Rainbow.Storage.Sc.dll, Rainbow.Storage.Yaml.dll и Kamsar.WebConsole.dll в свой основной проект любым способом (ссылка на проект, как двоичные ссылки и т. Д.),
- Скопируйте файлы стандартной конфигурации * .config в папку App_Config \ Include \ Unicorn
- Настройтесь по своему вкусу; файл настройки README является хорошей отправной точкой.
- Удалите $ yoursite / unicorn.aspx, чтобы выполнить начальную сериализацию вашего настроенного предиката
Архитектура поставщика данных
Для поставщика данных Единорога существуют два компонента: реализация конкретной базы данных и реализация Unicorn.
Реализация Unicorn - это индивидуальная конфигурация зависимостей Unicorn, которая обеспечивает автоматическую сериализацию. Например, если вы UnicornDataProvider
сериализацию двух пресетов, вам понадобятся два экземпляра UnicornDataProvider
- по одному для каждой реализации IPredicate
.
Реализация конкретной базы данных является подклассом исходного поставщика данных Sitecore, который предоставляет контейнер для одного или нескольких экземпляров UnicornDataProvider
. Из коробки предоставляется UnicornSqlServerDataProvider
. Вы можете бросить свой собственный, если находитесь в Oracle. Этот провайдер эффективно является неблокируемым обработчиком событий, который позволяет Unicorn захватывать изменения элементов, даже если используется злой класс EventDisabler
.
Если вы хотите подключить несколько поставщиков данных Unicorn к своей базе данных, вы создаете класс, который происходит от UnicornSqlServerDataProvider
. В этом классе вы можете выбрать:
- Создайте конструктор, который вводит ваш провайдер (ы) с помощью базового конструктора:
public MyDataProvider(string connectionString) :
base(connectionString, new UnicornDataProvider(), new
UnicornDataProvider(), ...)
- Создайте конструктор, который вводит ваш провайдер (ы) с помощью кода (это лучше, если вам нужно строить зависимости и т. Д., Которые не подходят для базового вызова):
public MyDataProvider(string connectionString) : base(connectionString, null)
{
AddUnicornDataProvider(new UnicornDataProvider());
// ...
}