我在最新版本的Entity Framework和mysql Connector 6.9.8上制作了Web应用程序。但是由于服务器兼容性,我不得不降级为Entity Framwrok 5和mysql connector 6.3.7。

它在EF6上运行正常,但是当我在EF5上运行时,它在插入任何记录时开始引发Exception。

lamiEntities1 lam = new lamiEntities1();
                ordered or = new ordered();
                or.PartyId = id;
                or.ItemId = itemid;
                or.Desc = txtDesc.Text;
                or.Dated = date;
                or.Qty =int.Parse( txtqty.Text);
                or.Remarks = txtremarks.Text;
                lam.ordereds.Add(or);
                lam.SaveChanges();


在lam.SaveChanges();上,我在EntityFramework.dll中发生了异常'System.Data.Entity.Infrastructure.DbUpdateException',但未在用户代码中处理”

注意:我仅使用旧的模式文件和新的web.config进行了新项目

最佳答案

从SQL角度来看,堆栈跟踪将包含更多信息。我最初的想法是您违反了SQL约束(例如主键)。

我将确保您不尝试在Ordered表中插入重复的主键,还应确保在其引用表中存在任何外键,例如ItemId

关于c# - dbcontext.SaveChnages();在插入db引发异常DbUpdateException时,将EF5与Mysql一起使用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34963727/

10-11 05:22