Создание дочернего объекта в ASP.NET MVC3 - PullRequest
0 голосов
/ 20 мая 2011

Я создал модель класса, используя Entity Framework 4, на основе моей (пустой) базы данных и следовал этому руководству , чтобы настроить таблицу на наследование типов с наследованием Student и Professorабстрактный Person класс.

Все работало нормально, а потом я продолжил и создал контроллер Student, а сгенерированный код для создания студентов не работает.У меня сейчас нет доступа к моему коду, поэтому я не могу вставить его, но функция Create выглядит примерно так:

function create(Student student){
    db.person.AddObject(student);
    db.person.SaveChanges();
}

Это дает мне ошибку, говоря Studentне может быть добавлено, потому что в базе данных нет Person с соответствующим ключом.Я очень новичок в asp.net, но я считаю, что контекст базы данных не вставляет человека, прежде чем пытаться вставить в таблицу ученика.

Извините, я не могу предоставить более подробную информацию, такую ​​как фотографиидизайна БД или фактического кода, но это лучшее, что я могу сделать прямо сейчас.

Спасибо!

1 Ответ

0 голосов
/ 09 августа 2011

посмотрите сейчас

datacontext    mainTable   subTable   what is needed to do.

   "db"     .  "person"  . "student" . blablabla

дБ, насколько я понимаю, это контекст вашей базы данных, а человек - это ваша таблица, и вы называете подстолью "студент", которая должна иметь отношение с "человеком".поэтому в вашей базе данных убедитесь, что у вас есть ключ для ваших таблиц "персона" и "студент", и убедитесь, что у вас есть связь между ними.

если вы можете дать больше информации, я могу помочь дальше, но прямо сейчас на основепо твоей информации это единственное знание, которым я могу поделиться ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...