---
title: "MVCモデルを活用してください"
slug: "use-mvc-models"
abstract: "MVCモデルは構造化データをMVCビューに渡すために設計されています。"
---
# MVCモデルを活用してください

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

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

1.  必要なすべてのモデルプロパティを実装するモデルクラスを作成します。 Sitecore.Mvc.Presentation.IRenderingModelインターフェースを使う場合、モデル作成時にInitializeメソッドが呼ばれます。
    
2.  コンテンツツリーの */sitecore/layout/Models*フォルダで、モデル用の定義項目を作成します。
    
3.  **モデルタイプ**フィールドでは、モデルクラスの型を指定します。例えば、Sitecore.Example.Employees,<your-assembly-name>.
    
    ![An MVC model in the content editor](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/103/sitecore-experience-manager/images/E8867E720E944D12B54606B8DBFE1482.png)
    
4.  モデルの子アイテムプロパティを繰り返して、ビューレンダリングcshtmlファイルでHTMLマークアップを生成します。例えば:
    
    @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.  ビューレンダリングのdefiniton項目の **モデル** フィールドに、作成したモデルアイテムの名前を入力してください。
    
    ![Specifiying a field in the MVC model item](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/103/sitecore-experience-manager/images/8265090C17C241B99704840665F1CD6A.png)
    
6.  .NETモデルでアクセス予定のフィールド名を記載したアイテムテンプレートを作成します。例えば、NameとYearsOfWork。
    
    ![Item template for model](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/103/sitecore-experience-manager/images/C22BDEABE83E4B9F8D51B45F6BA7FF05.png)
    
7.  */sitecore/content*のルートアイテムで、任意のテンプレートでモデル用の親アイテムを作成し、その親アイテムの下に関連するフィールド値を持つ複数のモデルアイテムを作成します。
    
    ![Parent item for the model](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/103/sitecore-experience-manager/images/9E9B74984E8F489F9C0FA24433C64553.png)
    
8.  コンテンツ項目のレイアウト定義では、モデルの親項目をビューレンダリングのデータソースとして設定します。
    

アイテムに移動し、そのアイテムがモデルセットを持つビューレンダリングを使用している場合、Initializeモデルメソッドはモデルの親アイテム(データソース)にあるアイテムから情報を読み込みます。これはモデルがIRenderingModelインターフェースから継承することを意味します。ビューレンダリングはモデルデータに基づいて出力マークアップを生成することができます。