Свойство навигации Entity Framework без ограничения внешнего ключа

У меня есть первая модель EF с кодом с простым отношением (PartDetails) ко многим (частям).

Пока система находится в автономном режиме, таблица поиска (PartDetails) очищается и повторно заполняется внешним заданием, нарушая ограничение.

modelBuilder.Entity<Part>().HasOptional(e => e.PartDetails)
                           .WithMany()
                           .HasForeignKey(k => k.PartDetailsId);

Я пробовал .Map и другие варианты, но все они создают ограничение БД.

Как я могу предотвратить создание EF ограничения DB FK с помощью свободного API?

Я понимаю, что это может быть не лучший архитектурный подход, но я придерживаюсь его. Если я не могу найти решение для этого с помощью Fluent API, я вручную сниму ограничение в сценарии миграции или отброшу и повторно добавлю ограничение во время задания очистки.


comment
Это может помочь: stackoverflow.com/questions/159038/   -  person Masoud    schedule 25.09.2014


Ответы (1)


Вы можете вручную сбросить ограничение в сценарии миграции, используя Sql("DROP CONSTRAINT...").

Но лучшим архитектурным подходом было бы отбросить и повторно добавить ограничение во время очистки. Похоже, проблема заключается в очистке. Ограничения очень важны.

person Colin    schedule 17.09.2014