モデルバウンドビュー
このページの翻訳は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
モデルバウンドビューコンポーネント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; } } }