我可以使用ViewModel并通过它将LINQ Query传递给View with @model指令@model IEnumerable<MyWebProject.ViewModels.MyViewModel>
。 问题:但是,1。如果我不想在以下示例中使用视图模型,该怎么办:2。在这种情况下,我的@model指令是什么?
视图模型:
public class MyViewModel
{
public string CustomerName{ get; set; }
public int CustomerOrderNo{ get; set; }
}
控制器:
public ActionResult Index()
{
MyViewModel vm= new MyViewModel();
var vm = (from c in db.Customers
join o in db.Orders
select new { CustomerName = c.Name, CustomerOrderNo = o.OrderNo}).ToList();
return View(vm);
}
查看:
@model IEnumerable<MyWebProject.ViewModels.MyViewModel>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.CustomerName)
</td>
<td>
@Html.DisplayFor(modelItem => item.CustomerOrderNo)
</td>
</tr>
}
答案 0 :(得分:0)
您始终可以使用public ActionResult Index()
{
MyViewModel vm= new MyViewModel();
var vm = (from c in db.Customers
join o in db.Orders
select new Tuple<string, int>(c.Name, o.OrderNo).ToList();
return View(vm);
}
。像这样:
@model IList<Tuple<string, int>>
在视图上:
@foreach (var item in Model)
{
@Model.Item1
}
你可以像这样访问它:
{{1}}
但是不要做,请。