0
下面的截图是我的模型中的一个实体(URL)。 ParentId字段是一个自引用的FK(指向Url.Id)。你可以在屏幕截图的底部看到这个导航。FK自我参照生成
在我的SQL和我的数据库,这是我从产生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是否仅从该FK生成Urls1和Url1? Url1是'FromRole'Urls1的0或1属性。 Urls1是'FromRole'Urls'ToRole'Urls1。 EF似乎在制作一个与Url表完全相同的导航属性。为什么它会这样做,我可以做些什么来让它产生一个所需的导航属性:Urls1?
- 好吧,不那么重要,但我可以根据FK名称或DB中的某些内容控制导航属性的名称吗?我讨厌它将它命名为'Url1'。我更喜欢'Parent',但不希望每次重新生成模型时都必须在设计器中手动更改它。
谢谢。
这将是ChildUrls,因为单个父实体有多个孩子。 – 2010-12-15 23:12:50
@Hightechrider当然。固定。 – jdmichal 2010-12-15 23:14:26
非常感谢您解释! – Chad 2010-12-16 06:23:02