連絡先および相互作用データの作成、取得、検索
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
xConnectクライアントAPI
xConnect Client APIは、連絡先やインタラクションのデータの作成、取得、検索を可能にします。クライアントはコレクションデータベースや検索インデックスに直接アクセスできません。基盤となるRESTフルウェブAPIはoDataプロトコルを実装しており、すべての通信はHTTPS上で行われます。
以下の例は、SitecoreコンテキストでxConnect Client APIのインスタンスを取得する方法を示しています:
using Sitecore.XConnect; using System; using System.Threading.Tasks; using System.Linq;
namespace Documentation { public class GetFacetsMultiple { public async void Example() { using (Sitecore.XConnect.Client.XConnectClient client = Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.GetClient()) { try { // Get, create, or search experience data here } catch (XdbExecutionException ex) { // Handle exceptions } } } } }
xConnectのエンドポイントは \App_Config\ConnectionStrings.configファイル内で設定されます。開発者環境では、CollectionとSearchはxdb.collectionという単一のエンドポイントを共有しています。
xConnect Client APIはSitecore外でも使用可能です。以下の例は、コンソールアプリケーションからxConnect Client APIを使用する方法を示しています:
using Sitecore.XConnect; using Sitecore.XConnect.Client; using Sitecore.XConnect.Schema; using System; using System.Threading.Tasks; using Sitecore.XConnect.Client.WebApi; using Sitecore.Xdb.Common.Web; using Sitecore.XConnect.Collection.Model; using System.Collections.Generic; using Sitecore.Xdb.Common.Web;
namespace Documentation { public class Program { private static void Main(string args) { MainAsync(args).ConfigureAwait(false).GetAwaiter().GetResult(); }
private static async Task MainAsync(string args) { CertificateHttpClientHandlerModifierOptions options = CertificateHttpClientHandlerModifierOptions.Parse("StoreName=My;StoreLocation=LocalMachine;FindType=FindByThumbprint;FindValue=15E6693B0AECB63DE57D991EC363CA462DC52432");
var certificateModifier = new CertificateHttpClientHandlerModifier(options);
List
var collectionClient = new CollectionWebApiClient(new Uri("https://xconnect/odata"), clientModifiers, new { certificateModifier }); var searchClient = new SearchWebApiClient(new Uri("https://xconnect/odata"), clientModifiers, new { certificateModifier }); var configurationClient = new ConfigurationWebApiClient(new Uri("https://xconnect/configuration"), clientModifiers, new { certificateModifier });
var cfg = new XConnectClientConfiguration( new XdbRuntimeModel(CollectionModel.Model), collectionClient, searchClient, configurationClient);
try { await cfg.InitializeAsync();
} catch (XdbModelConflictException ce) { Console.WriteLine("ERROR:" + ce.Message); return; }
using (var client = new XConnectClient(cfg)) { } } } }
xConnectの拡張
開発者として、xConnectを以下の方法で拡張できます:
- コレクションモデルを拡張する方法は以下の通りです:
- 計算された面マージハンドラなどのサービスプラグインを追加