我在Visual Studio 2012中使用asp.net中的Entity Framework。我只是在学习这些东西。我遵循了tutorial
刚刚创建了网格并运行了网站,除了删除操作外,一切都很好。当我点击删除时,它会显示如下错误:
有人会告诉我为什么我会收到此错误以及如何纠正此错误。 。
提前致谢
答案 0 :(得分:3)
您的问题的答案在您的教程中给出。 (仅当您使用相同的表和相同的约束时才适用) 在“修改EntityDataSource控制标记以提高性能”下
删除按钮也有效。对具有注册日期且行消失的行单击“删除”。 (没有注册日期的行代表教师,您可能会得到参照完整性错误。在下一个教程中,您将过滤此列表以仅包括学生。)
您正在获取参照错误意味着您没有在删除操作中使用级联,因此当您删除person表中的行时,因为学生成绩表中引用了相同的列。所以删除不会发生。使用级联 - ON DELETE CASCADE。
答案 1 :(得分:1)
好像你想从学校引用的课程讲师中删除一个人。
答案 2 :(得分:0)
这是一个非常明确的错误消息,快速谷歌可以帮助您更快地解决。
表CourseInstructor与Table Person具有外键关系。在EF图表中,您可以将其视为关系(两个实体之间的一条线)。
当CourseInstructor仍然引用Person时,数据库不允许您删除Person,因此您需要首先删除相关的CourseInstructor,理想情况下是作为事务的一部分。
如果你真的在努力寻找“参照完整性”和“实体框架中的参照完整性”。
希望这有助于一些人。