我将实体框架 6 与 asp.net mvc 5 一起使用,并且在将新记录插入数据库时,SaveChanges() 方法会产生以下错误,也可以在下图中看到:
我搜索了很多并做了一些解决方法,但没有任何效果,下面是我的创建操作:
[HttpPost]
public ActionResult Create(ImagesVM img, HttpPostedFileBase upload)
{
if (ModelState.IsValid)
{
var filename = "";
var path = "";
//var originalFilename = "";
if (upload != null && upload.ContentLength > 0)
{
//originalFilename = Path.GetFileName(upload.FileName);
if (!Directory.Exists(Server.MapPath("~/Views/Images/Photots/" + img.PlayerId)))
{
Directory.CreateDirectory(Server.MapPath("~/Views/Images/Photots/" + img.PlayerId));
}
filename = img.PlayerId.ToString() + "_" + Guid.NewGuid().ToString();
path = Server.MapPath("~/Views/Images/Photots/" + filename);
}
else
{
ModelState.AddModelError("error", "There was an error with saving the record");
img.Players = new SelectList(db.Players, "Id", "Name");
return View(img);
}
upload.SaveAs(path);
ImageDTO dto = new ImageDTO();
dto.ImageName = filename;
dto.ImageUrl = path;
dto.ThumbnailTitle = img.ThumbnailTitle;
dto.ThumbnailDetails = img.ThumbnailDetails;
dto.PlayerId = img.PlayerId;
db.Images.Add(dto);
db.SaveChanges();
return RedirectToAction("Index");
}
img.Players = new SelectList(db.Players, "Id", "Name");
return View(img);
}
任何帮助都将提前受到高度赞赏。
