我使用Entity Framework 4创建了一个基于my(空)数据库的类模型,并按照this tutorial为每个类型继承设置了一个表,Student
和Professor
继承抽象Person
类。
一切正常,然后我继续创建Student
控制器,生成的代码用于创建学生无效。我现在无法访问我的代码,所以我无法粘贴它,但Create
函数是这样的:
function create(Student student){
db.person.AddObject(student);
db.person.SaveChanges();
}
这给我一个错误,说无法添加Student
,因为数据库中没有Person
并且有相应的密钥。我是asp.net的新手,但我相信数据库上下文在尝试插入学生表之前没有插入一个人。
对不起,我无法提供更多详细信息,如数据库设计图片或实际代码,但这是我现在能做的最好的。
谢谢!
答案 0 :(得分:0)
现在看
datacontext mainTable subTable what is needed to do.
"db" . "person" . "student" . blablabla
db据我所知是你的数据库上下文和人是你的表,你正在调用一个子表“学生”,需要与“人”有关系。所以在你的数据库中确保你的“人”和“学生”表有一把钥匙,并确保你们之间有关系。
如果您能提供更多信息,我可以提供更多帮助,但现在根据您的信息,这是我可以分享的唯一知识..