На скриншоте ниже приведена сущность (URL) в моей модели. Поле ParentId является саморегуляционным FK (указывает на Url.Id). Вы можете увидеть эту навигацию внизу скриншота.Самонаводящаяся FK, генерирующая странно
В моей SQL и мой DB, который я генерировать EDMX от, автореферентное FK называется FK_Urls_Parent:
-- Creating foreign key on [ParentId] in table 'Urls'
ALTER TABLE [Urls]
ADD CONSTRAINT [FK_Urls_Parent]
FOREIGN KEY ([ParentId])
REFERENCES [Urls]
([Id])
ON DELETE NO ACTION ON UPDATE NO ACTION;
Мои вопросы:
- Почему EF генерирует Urls1 и Url1 только из этого FK? Url1 - это свойство 0 или 1, которое является «FromRole» Urls1. Urls1 - это 'FromRole' Urls 'ToRole' Urls1. Кажется, что EF создает свойство навигации, такое же, как и таблица Url. Зачем это делать, и могу ли я сделать что-то, чтобы просто создать одно требуемое свойство навигации: Urls1?
- Хорошо, так не так важно, но могу ли я управлять именем свойства Navigation на основе имени FK или чего-то в БД? Я ненавижу, что он называет его «Url1». Я бы предпочел «Родитель», но не хочу, чтобы вручную менять его в дизайнере каждый раз, когда я регенерирую модель.
Спасибо.
Это было бы ChildUrls, поскольку один родительский объект имеет множество дочерних элементов. – 2010-12-15 23:12:50