我是新手,获得传入目录类型为system. clection .generic.list的错误模型项,但该目录需要system.collection.ienumerable
请帮我解决这个错误我在这里粘贴控制器和视图
控制器 public ActionResult DisplayComment()
{
var result = Manager.GetUsersWhoHaveConsumedFreeCredit();
JavaScriptSerializer serializer = new JavaScriptSerializer();
var callHistory = serializer.Deserialize<List<CallHistory>>(result);
YelloAdminDbContext db = new YelloAdminDbContext();
if (callHistory != null)
{
foreach (var item in callHistory.ToList())
{
int Id = int.Parse(item.Login);
var note = db.Note.OrderByDescending(i => i.Id).Where(i => i.LoginId == Id).FirstOrDefault();
if (note != null && note.LoginId == Id)
{
var temp = note.Comments.ToList();
return PartialView(temp);
}
else
return Content("No Comments");
}
}
return Content("No Comments");
}
视图 @model IEnumerable<MyYello.Admin.Models.CallNote>
<table>
<tr>
<th>
@Html.DisplayNameFor(model => model.Comments)
</th>
<th></th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.Comments)
</td>
</tr>
}
</table>
返回类型为 comments :
的列表var temp = note.Comments.ToList();
return PartialView(temp);
而在您的视图中是强类型为IEnumerable<MyYello.Admin.Models.CallNote>
类型的Model
在视图中你已经写了,所以它冲突你的视图期望不同的类型,而你传递不同的类型:
@model IEnumerable<MyYello.Admin.Models.CallNote>
你应该从你的动作中返回IEnumerable<MyYello.Admin.Models.CallNote>
,或者如果你需要传递Comments类型,那么在View中更改:
@model List<MyYello.Admin.Models.Comments>