サーチ…


前書き

Unicornは、テンプレート、レンダリング、およびその他のデータベース項目をSitecoreインスタンス間で移動する問題を解決する、Sitecoreのユーティリティです。これは、開発者が独自のローカルインスタンスを持つ場合に問題になります。パッケージはエラーを起こしやすく、生産の途中で忘れがちです。 Unicornはこの問題を解決するために、Sitecore項目のシリアル化されたコピーをコードとともにディスクに書き込むことで、コードベースの必要なデータベース項目のコピーをソースコントロールに添付します。

備考

役に立つ情報はここにあります:

初期設定

  • Sitecore 6.6以降( Sitecore 8.xを含む)が必要です。 Sitecore 6.6との互換性のためには、.NET 4.5がインストールされている必要があります。
  • Unicornをインストールします。これは、あなたのプロジェクトにUnicorn NuGetパッケージを追加するのと同じくらい簡単です。

PM>インストールパッケージUnicorn

  • NuGetパッケージをインストールすると、Visual StudioにREADMEファイル表示され、開始するのに役立ちます。

手動インストール/ソースからのインストール

  • リポジトリのクローン作成
  • / lib / sitecore / v7(v7 / v8の場合)にSitecore.Kernel.dllアセンブリのコピーを置きます。
  • Visual Studio 2012以降を使用してSitecoreバージョンのプロジェクトを作成する
  • 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の実装という2つのコンポーネントがあります。

Unicornの実装は、自動直列化を取得するUnicorn依存の個別の設定です。たとえば、2つのプリセットをシリアライズする場合、 UnicornDataProvider 2つのインスタンス(各IPredicate実装ごとに1つ)が必要です。

データベース固有の実装は、1つ以上のUnicornDataProviderインスタンスのコンテナを提供する元のSitecoreデータプロバイダのサブクラスです。 UnicornSqlServerDataProviderで、 UnicornSqlServerDataProviderが提供されます。あなたがオラクルにいるなら、あなたは自分のロールを張ることができます。このプロバイダは事実上unblockableイベントハンドラであり、悪意のあるEventDisablerクラスが使用されている場合でもUnicornがアイテムの変更をトラップできるようにします。

複数のUnicornデータプロバイダをデータベースに接続する場合は、 UnicornSqlServerDataProviderから派生したクラスを作成します。このクラスでは、以下を選択できます。

  • ベースコンストラクタを使用してプロバイダを注入するコンストラクタを作成します。
public MyDataProvider(string connectionString) :
base(connectionString, new UnicornDataProvider(), new
UnicornDataProvider(), ...)
  • コードを使用してプロバイダを注入するコンストラクタを作成します(これは、依存関係などを構築して、基本呼び出しにうまく適合しなければならない場合にはより良い方法です)。
public MyDataProvider(string connectionString) : base(connectionString, null)
 {
    AddUnicornDataProvider(new UnicornDataProvider());
    // ...
 }


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow