2013-05-08 5 views
1

У меня возникают проблемы при попытке вставить объект с нулевыми ассоциированными сущностями ..Как остановить инфраструктуру Entity от вставки связанных объектов?

Я просто делаю:

pUser.DogAndUser = null //dogAndUser is the relationship between dog and user 
context.User.Add(pUser) 

Но здесь я получаю сообщение об ошибке о том, что внешний ключ idDog не существует в таблице Собака. И хорошо .. конечно нет .. Я даю ему нулевую ассоциацию. Затем я подтвердил, что он пытался вставить связанные объекты, вставляющие строку в Dog, а затем передавая значение в отношении DogAndUser .., которое не выбрасывало ошибка и вставляли строку в отношения ... но почему? Я явно не сказал, чтобы это делалось. Как я могу остановить это? Благодаря!

+2

Является ли ваш столбец внешнего ключа нулевым в базе данных? –

+0

Nope..both still..why он пытается вставить на связанную сущность? Это отношение от одного до большого. –

+0

Это связано с определенными отношениями в дБ, которые переносятся в EF через EDMX. – Saravanan

ответ

3

Чтобы устранить проблему, вам необходимо проверить несколько вещей.

  1. Задает ли столбец внешнего ключа значение NULL в базе данных?
  2. В вашей модели, является собственностью иностранного ключевого поля обнуляемого
  3. На вашей ассоциации, является конец Кратность DogUAndUser установлена ​​в 0..1

По вашему описанию, это должно исправить твоя проблема.

Смежные вопросы