none
Entity Framework ошибки после обновления RRS feed

  • Общие обсуждения

  • Добрый день!

    Ситуцаия следующая: недавно появилась задача доработать программное обеспечение, написаное другим человеком. Есть подключение Entity Framework и построенная на нем логика работы ПО. В базе данных в одну из таблиц я добавил поле и в Visual Studio нажал Update Model from DB, после обновления появляется куча ошибок следующих типов:

    Error 33 Error 113: Multiplicity conflicts with the referential constraint in Role 'Название' in relationship 'НазваниеСвязи'. Because all of the properties in the Dependent Role are non-nullable, multiplicity of the Principal Role must be '1' (в этом месте могут быть и *, и 0..1).

    Error 32 Error 113: Multiplicity is not valid in Role 'Название' in relationship 'НазваниеСвязи'. Because the Dependent Role properties are not the key properties, the upper bound of the multiplicity of the Dependent Role must be *.

    Error 31 Error 111: Properties referred by the Principal Role object_status must be exactly identical to the key of the EntityType НазваниеТаблицы referred to by the Principal Role in the relationship constraint for Relationship НазваниеСвязи. Make sure all the key properties are specified in the Principal Role.

    Попытка исправить связь (как в описании ошибки) на другой тип (1,0..1,*) приводит к тому,

    что появляется еще больше ошибок.

    И еще момент. Эта куча ошибок появляется сразу после обновления модели,

    а после попытки пересобрать приложение, к уже имеющейся куче ошибок,

    добавляется еще больше ошибок.

    Может кто-нибудь сталкивался или знает в каком направлении копать?

    С уважением, Андрей.



    26 ноября 2013 г. 10:19

Все ответы

  • Добрый день.

    Проблема не в связи, а в поле. У вас связь типа 0..1 ко многим, а поле внешнего ключа не может принимать null. Меняйте связь на 1 ко многим. А потом у вас происходит ошибки мапинга. Правый клик в дизайнере -> сгенерировать базу данных, получите SQL скрипт который можете сразу удалить, но мапинг должен поправиться.

    26 ноября 2013 г. 12:07
    Отвечающий
  • Пробовал менять эти значения, но ошибка либо просто не уходит (даже если нажать Validate), либо появляется новая. А сгененировать базу не дает, так как перед этим должны быть исправлены все ошибки.
    26 ноября 2013 г. 13:35