Mysql
 sql >> Datenbank >  >> RDS >> Mysql

ASP.NET MVC 4, mehrere Modelle in einer Ansicht?

Wenn Sie noch kein Ansichtsmodell haben, um dies darzustellen, erstellen Sie einfach eines:

public class MyViewModel
{
    public Engineer Engineer { get; set; }
    public List<Element> Elements { get; set; }
}

Füllen Sie eine Reihe von Ansichtsmodellen im Controller auf

public ActionResult MyAction()
{
    var viewModels = 
        (from e in db.Engineers
         select new MyViewModel
         {
             Engineer = e,
             Elements = e.Elements,
         })
        .ToList();
    return View(viewModels);
}

Geben Sie in Ihrer Ansicht einfach an, dass Sie eine Sammlung von Ansichtsmodellen verwenden:

@model List<MyViewModel>
@foreach(var vm in Model)
{
    <h1>Projects for engineer: @vm.Engineer.Name</ha>
    <ul>
    @foreach(var ele in vm.Elements)
    {
        <li>@ele.Name</li>
    }
    </ul>
}