【发布时间】:2016-08-20 16:28:32
【问题描述】:
我想将数据从我的控制器传递给查看。 这是控制器的代码
public ActionResult AllCars()
{
try
{
int id = System.Web.HttpContext.Current.User.Identity.GetUserId<int>();
var reservedCars = (from c in db.Cars
join o in db.Orders on c.Car_Id equals o.Car_Id
join u in db.AspNetUsers on o.Id equals u.Id
where u.Id == 5
select new
{
c.Car_Description,
c.Car_Id,
c.CarMakeId,
c.CarModelId,
c.Reservation_Status,
c.Color
});
return View(reservedCars);
}
catch (Exception)
{
throw;
}
}
这是我的视图文件。
@model IEnumerable<FinalProject.Models.ReservedCar>
<table>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.Car_Id);
</td>
</tr>
}
</table>
但是当我运行视图时出现以下错误 传入字典的模型项的类型为“System.Data.Entity.Infrastructure.DbQuery”,但此字典需要“System.Collections.IEnumerable”类型的模型项
我知道我将 dbquery 结果传递给视图,我的视图预计它将是 iEnumerable。 请指导我如何完成这项任务。?我只是想将查询结果传递到我的视图中并想使用它。
模型类。 ReservedCar.cs
namespace FinalProject.Models
{
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.Spatial;
public partial class ReservedCar
{
public int Id { get; set; }
public string Car_Description { get; set; }
public int Car_Id { get; set; }
public string CarMakeId { get; set; }
public string CarModelId { get; set; }
public string Reservation_Status { get; set; }
public string Color { get; set; }
}
}
【问题讨论】:
-
以
.ToList()结束查询或传递给视图reservedCars.ToList()
标签: c# asp.net .net asp.net-mvc asp.net-mvc-4