モデルバウンドビュー

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

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

!重要以前にアプリを統合していた場合、それは旧版のASP.NETコアレンダリングSDK(バージョン22以前)を使用しています。このSDKは更新を受け取っていないため、最新のバージョンへのアップグレード をお勧めします。

モデルバウンドビューはデフォルトのSitecoreComponentViewComponentビューコンポーネントを使用するため、ビューコンポーネントクラスを作成する必要はありません。

/Views/Shared/Components/SitecoreComponentフォルダにRazorビューを作成し、ビューモデルクラスを作成したら、Layout Serviceの応答をextensionメソッドでビューコンポーネントにマッピングthe AddModelBoundView()必要があります。

以下の例では:

  • AddModelBoundView("ContentBlock")ContentBlock応答コンポーネントをデフォルトのSitecoreComponentViewComponentビューコンポーネントにマッピングし、ContentBlock.cshtmlビューを使用し、BoundContentBlockモデルでビューを提供します。
  • AddModelBoundView(name => name.StartsWith("sc"), "GenericBlock")すべての応答成分をscで接頭辞で付随させる。GenericBlockViewComponentビューコンポーネントをマッピングし、 GenericBlock.cshtml ビューを使用し、 BoundGenericBlock モデルでビューを提供する。

public void ConfigureServices(IServiceCollection services) { var renderingEngineBuilder = services.AddSitecoreRenderingEngine(options => options .AddModelBoundView("ContentBlock") .AddModelBoundView(name => name.StartsWith("sc"), "GenericBlock") ); }

モデルバウンドビューコンポーネントRazorビューからSitecoreコンテンツにアクセスする

モデルバウンドビューコンポーネントのRazorビューは、Layout Service応答のプロパティにバインドされる強型モデルを使用します。

Razorの視点:

@model MyRenderingHost.ComponentModels.ContentBlock

RazorビューでアクセスされたContentBlockモデル:

using Sitecore.LayoutService.Client.Response.Model.Fields;

namespace MyRenderingHost.ComponentModels { public class ContentBlock { public TextField Heading { get; set; } public RichTextField Content { get; set; } } }

この記事を改善するための提案がある場合は、 お知らせください!