你的sql语法实体框架有一个错误.使用实体框架

本文关键字:实体 框架 错误 有一个 sql 你的 语法 | 更新日期: 2023-09-27 18:16:24

我得到"你有一个错误在你的sql语法实体框架",而试图更新我的MySQL数据库中的数据。我正在开发MVC 4 ASP。. NET应用程序使用.edmx文件与数据库交互。

这是我的情况:我有两个表:A和B。A有很多B, B有很多A,所以我做了一个C表,A的外键和B的外键。现在我试图删除C中的其中一行。当我踩在db.SaveChanges();行上时,它给我一个异常,说我已经提到的。

有谁知道我怎么修理它吗?

你的sql语法实体框架有一个错误.使用实体框架

发生的事情是,在执行db.SaveChanges()的时刻(在更新之后),.edmx试图更新'C'表中的行,但由于该表只有A和B的两个外键,因此不支持更新操作。这是我在StackOverflow的其他帖子中发现的解决方案,它对我有效:

    右键单击edmx文件,选择Open with, XML editor
  1. 完全删除DefiningQuery
  2. store:Schema="dbo"重命名为Schema="dbo(删除"store:")
  3. 删除store:Name=...属性(完全)

注意:这是从问题中移出来的,并以OP的名义发布。

通过删除/注释edmx文件中的'DefiningQuery'部分来解决此问题。不需要为我重命名