Sitecoreレイアウトサービス
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
前に アプリを統合した場合は、従来の ASP.NET Core Rendering SDKバージョン22以前を使用しています。このSDKは更新を受け取っていないため、新しい の最新バージョンにアップグレードすることをお勧めします。
Sitecoreレイアウト サービスは、JSON形式のSitecoreコンテンツを提供するSitecoreヘッドレス サービス エンドポイントです。Sitecoreレイアウト サービス クライアントを使用してレイアウト サービスと通信し、Sitecoreレンダリング エンジンを使用してコンテンツをレンダリングします。
レイアウト サービス クライアント ライブラリはNuGetパッケージとして使用でき、名前の先頭にはSitecore.LayoutService.Clientが付きます。
SitecoreLayoutRequestモデル
SitecoreLayoutRequestモデル
SitecoreLayoutRequestモデルは、任意のプロパティの読み取りと書き込みをサポートする中間データ転送オブジェクトにインスタンス化します。レイアウト サービス クライアントは、クエリ文字列キーを使用して、これらのプロパティをレイアウト サービスに送信します。
SitecoreLayoutRequestモデルには、デフォルトのプロパティのセットと、それに関連する組み合わせられたget/setメソッドが含まれています。たとえば、request.ApiKey()はAPIキーの値を取得し、request.ApiKey("value")はAPIキーの値を設定します。
デフォルトのプロパティは次のとおりです。
SitecoreLayoutResponseモデル
SitecoreLayoutResponseモデル
レイアウト サービスは、フィールド レベルまでナビゲーションできるように設計された、厳密に型指定されたSitecoreLayoutResponseモデルからインスタンス化されたオブジェクトを返します。SitecoreLayoutResponseオブジェクトは、いくつかの部分で構成されています。
-
Request- レイアウトサービスに送信されるSitecoreLayoutRequest 。
-
Metadata- HTTP応答ヘッダーなどの応答メタデータ。
-
Content- 逆シリアル化されたJSON応答。
-
Errors- SitecoreLayoutRequestオブジェクトの処理とSitecoreLayoutResponseオブジェクトのビルド中に発生したエラーの一覧。
-
HasErrors- これは、Errorsリストが空でない場合に当てはまります。
タイプとフィールド
Content次のタイプを使用します。
-
Route- Layout Serviceから返されるJSONレスポンスのRouteオブジェクトにマップされます。そのフィールドはDictionary<string, IFieldReader>として入力されます。
-
Component- プレースホルダーのリスト値内のオブジェクトにマップされます。そのフィールドはDictionary<string, IFieldReader>として入力されます。
-
IFieldReader-RouteまたはComponentのフィールドエントリにマッピングします。この実装は、Newtonsoftなどのシリアル化ライブラリによって提供されます。
-
IField- レイアウトサービスクライアントでは、IFieldのさまざまな実装が提供されます。このインターフェイスは、IFieldReaderを介して読み取ることができるタイプを識別するためのマーカーとして使用されます。
レイアウトサービスクライアントには、次のフィールドがあります。
-
CheckboxField- チェックボックスフィールド。
-
ContentListField- アイテムリンクフィールドのリスト。
-
DateField- 日付と時刻のフィールド。
-
FileField- ファイルフィールド。
-
HyperLinkField- リンクフィールド。
-
ImageField- 画像フィールド。
-
ItemLinkField- 単一項目フィールド。
-
NumberField- 数値フィールド。
-
RichTextField- リッチテキストフィールド。
-
TextField- 1行または複数行のテキスト フィールド。
フィールドは、次のようなさまざまなフィールド プロパティを公開するために、複数のインターフェイスを実装できます。
-
IValueField<T>- タイプTのValueプロパティを公開します。
-
IEditableField- 編集可能なフィールドの前後にマークアップを公開します。
構文
IFieldReader型は、IFieldを実装する型を指定すると、IFieldReaderからのデータが設定された型のインスタンスを返すRead()メソッドを公開します。
ComponentとRouteはどちらも、Fieldsを公開する同じ基本実装を継承します。さらに、次のものを公開します。
-
ReadField() -IFieldの型と、指定されたフィールドを読み取るためのstringを受け取ります。
-
ReadFields()- プロパティ名とフィールド名に一致するすべてのフィールドが設定された任意の型を受け取ります。
ASP.NETのRESTレイアウトサービスクライアント構成
ASP.NETのRESTレイアウトサービスクライアント構成
次の例は、アプリケーションStartupクラスのConfigureServicesメソッドでASP.NET Rendering SDKと共にレイアウト サービス クライアントを使用する方法を示しています。
レイアウト サービスにアクセスするには、Sitecoreサービス クライアントAPIキーのIDをApiKeyメソッドに提供する必要があります。
ASP.NET用のGraphQLレイアウトサービスクライアント設定
ASP.NET用のGraphQLレイアウトサービスクライアント設定
次の例は、GraphQLエンドポイントを使用してレイアウト サービス クライアントを構成する方法を示しています。