1. MVCの

MVCモデルを使用する

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

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

MVCモデルを使用して構造化データをMVCビューに渡し、このデータを使用してRazor構文を使用してHTMLマークアップをレンダリングします。Sitecoreビュー レンダリングでは、出力マークアップのレンダリングにMVCビューを使用するため、これらのレンダリングに適切なモデル アイテムを設定して、コンテンツ アイテムからデータを渡すことができます。

ビュー レンダリングでMVCモデルを使用するには:

  1. 必要なすべてのモデル プロパティを実装するモデル クラスを作成します。 Sitecore.Mvc.Presentation.IRenderingModelインターフェースを使用する場合、モデルの作成時にInitializeメソッドが呼び出されます。

  2. コンテンツ ツリーの /sitecore/layout/Modelsフォルダーで、モデルの定義アイテムを作成します。

  3. Model Typeフィールドで、モデル クラスのタイプを指定します (例:Sitecore.Example.Employees,<your-assembly-name>.

    An MVC model in the content editor
  4. モデルの子アイテムのプロパティを反復処理して、ビュー レンダリング ファイル にHTMLマークアップを生成しますcshtml 。例えば:

    @model Sitecore.Example.Employees
    <table>
        @foreach (var empl in @Model)
        {
            <tr>
                <td>Employee name:</td><td style="color:orange">@empl.Name</td>
                <td>Years of work:</td><td style="color:orange">@empl.YearsOfWork</td>
            </tr>
        }
    </table>
  5. ビュー レンダリングの定義アイテムのModelフィールドに、作成したモデル アイテムの名前を入力します。

    Specifiying a field in the MVC model item
  6. .NETモデルでアクセスする予定のフィールドの名前を使用して項目テンプレートを作成します。たとえば、NameYearsOfWorkなどです。

    Item template for model
  7. /sitecore/contentルートアイテムで、任意のテンプレートを使用してモデルの親アイテムを作成し、この親アイテムの下に、関連するフィールド値を持ついくつかのモデルアイテムを作成します。

    Parent item for the model
  8. コンテンツ・アイテムのレイアウト定義で、モデルの親アイテムをビュー・レンダリングのデータ・ソースとして設定します。

アイテムに移動し、このアイテムがモデルが設定されているビュー レンダリングを使用している場合、Initializeモデル メソッドは、モデルの親アイテム (データ ソース) の下にあるアイテムから情報を読み取ります。これには、モデルがIRenderingModelインターフェースから継承する必要があります。ビュー レンダリングでは、モデル データに従って出力マークアップを生成できます。

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