Entity Framework EDMX Неправильная кратность? - PullRequest
0 голосов
/ 09 ноября 2018

Кажется, у меня проблемы с первым множеством баз данных в проекте. Я использую EF v5.0

У меня есть две сущности БД со следующими (например, классы псевдо):

entity {
    long Id; //PK
    bool myProp;
}

entity_detail {
    long entityID; //FK to entity.Id
    string name;
    datetime entered;
}

Когда я обновляю модель из базы данных, она правильно генерирует эти классы в .tt, однако она помещает entity_detail в ICollection<entity_detail> в entity классе.

Это связано с множественностью, когда я изменяю множественность с Many (*) на Zero or One (0..1) в EDMX, она выдаст ошибку и вынудит меня использовать Many (*)

Проблема этого сценария заключается в том, что entity_detail должен ONLY генерироваться, если myProp установлен на false (чтобы избежать избыточных данных в дБ)

Таким образом, будучи 0..1, есть идеи о том, как настроить это с точки зрения базы данных, чтобы EDMX обновил его до 0..1 на стороне объекта и 1 на конце entity_detail?

Заранее спасибо!

1 Ответ

0 голосов
/ 09 ноября 2018

Для любого, кто ищет ответ, правильной настройкой было сделать так, чтобы столбец внешнего ключа (entityID) объекта entity_detail также являлся первичным ключом .

Таким образом, он будет уникальным, но потребуется, только если он существует (0..1)

Надеюсь, это поможет!

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