我正在尝试在MVC .net应用程序中编辑索引。在我更改为Mysql Server中的其他视图之前,它运行良好。
我尝试为我认为可以使用的新View更新model.edmx,但在尝试编辑时无法停止向我显示此错误。我认为这是一个映射问题,但我找不到该问题
控制器:
public ActionResult Details(int? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
Graduated_Students graduates = db.Graduated_Students.Find(id);
if (graduates == null)
{
return HttpNotFound();
}
return View(graduates);
}
型号:
{
public int ID { get; set; }
public int CohortId { get; set; }
public string Name { get; set; }
public string FullName { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string ContractStatus { get; set; }
public string DepositStatus { get; set; }
public string GraduationStatus { get; set; }
}
查看:
<td>
@Html.ActionLink(Resource.Profile, "Details", new { id = item.ID })
@Html.ActionLink(Resource.Edit, "Edit", new { id = item.ID })
@Html.ActionLink(Resource.Delete, "Delete", new { id = item.ID })
</td>
答案 0 :(得分:0)
数据库视图没有主键。 Find()搜索主键,因此不能用于搜索视图。将其更改为FirstOrDefault():
Graduated_Students graduates = db.Graduated_Students.FirstOrDefault(x => x.ID == id);