Viewに複数のModelを渡す

[やり方]

 ・単純に、渡すModel内のフィールドとして複数のModelを持たせる

 

■Mode側

namespace xxx.Models
{
    public class ASideViewModel
    {
        public List<UserItemsModel> MainItems { get; set; }
        public List<UserItemsModel> OrdianlItems { get; set; }
    }
}

■Control

 ASideViewModel asvMdl = new ASideViewModel();
 asvMdl.MainItems = td.GetLists();
 asvMdl.OrdianlItems = new List<UserItemsModel>();
 asvMdl.OrdianlItems.Add (OrdinalItem.GetOrdinalItem(base._usContext));
 return View(asvMdl);

 

■View

/* 定義部方法は通常のModelと変わらず */

@model xxx.Models.ASideViewModel
@*Header*@
@using Loswin.Commons.ViewPatams;
@using Loswin.Commons.Constants;

/* 使い方も同様 */

 <input type="text"  id="@(Model.ordinalItem.ItemSeqNo)Name" value="" />

 <input type="text"  id="@(Model.MainItems.ItemName)Name" value="" />