1. リファレンスデータサービス

リファレンス データ サービスAPI

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Reference Data Service APIは、Reference Data Serviceデータベースに直接アクセスでき、HTTPクライアントは使用しません。

大事な

クライアントは、Reference Data Client APIを使用する必要があります。Sitecoreのコンテキストでは、Reference Data Service APIのインスタンスを取得することはできません。

サービスAPIは、次のようなxDB内からの呼び出し元によって使用されます。

  • 参照データ サービス。

  • インタラクション集約パイプラインは、スタンドアロンインスタンスと処理インスタンスで実行されます。

Reference Data Client APIはReferenceDataServiceクラスで表され、IReferenceDataClientインターフェイスを実装しているため、Reference Data Client APIとまったく同じ方法で使用できます。

Reference Data Service APIのインスタンスをSitecore以外のコンテキストで取得する

次の例は、Sitecore以外のコンテキストでReference Data Service APIのインスタンスを作成する方法を示しています。

using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection.Extensions;
using Microsoft.Extensions.Logging;
using Sitecore.DependencyInjection;
using Sitecore.Framework.Conditions;
using Sitecore.Xdb.ReferenceData.Core.Converter;
using Sitecore.Xdb.ReferenceData.Service;
using Sitecore.Xdb.ReferenceData.Service.Cache;
using Sitecore.Xdb.ReferenceData.Service.Repository;
using Sitecore.Xdb.ReferenceData.SqlServer;
using Sitecore.Xdb.Sql.Common;
using System;

namespace Documentation
{
    public class RefDataClientsNonSitecore
    {
        public async void AsyncExample()
        {
            var retySettings = new RetryManagerSettings(5, TimeSpan.FromSeconds(3));
            var retryManager = new RetryManager(retySettings);
            var loggerFactory = new LoggerFactory();

            var refdataProviderLogger = new Logger<SqlServerReferenceDataProvider>(loggerFactory);

            // Expects xdb.referencedata to exist
            var refdataProvider = new SqlServerReferenceDataProvider("xdb.referencedata", refdataProviderLogger, retryManager);

            var refdataRepo = new ReferenceDataRepository(refdataProvider);
            var refdataCache = new NullDefinitionCache();

            var referenceDataServiceLogger = new Logger<ReferenceDataService>(loggerFactory);
            var refdataClient = new ReferenceDataService(refdataRepo, refdataCache, referenceDataServiceLogger, new DefinitionRecordJsonConverter());
        }
    }
}
この記事を改善するための提案がある場合は、 お知らせください!