簡體   English   中英

數據庫優先實體框架將唯一外鍵映射為一對多

[英]Database first Entity Framework mapping unique foreign keys as one to many

我在 Microsoft SQL Server 2008 R2 中有一個名為Page的表,其主鍵名為ID 我有另一個名為Navigation的表,其中有一列PageID PageID是對PageID列的唯一外鍵引用。 這在NavigationPage記錄之間創建了一對一的關系。

從數據庫生成模型時,它會創建一對多關系,其中Page包含Navigation記錄列表。

這僅僅是實體框架檢測到涉及外鍵並忽略數據庫中列的唯一性嗎?

NavigationPageID列的 SQL 是:

[PageID] INTEGER FOREIGN KEY REFERENCES [Page](ID) UNIQUE NOT NULL

PageID列的 SQL 是:

[ID] INTEGER PRIMARY KEY IDENTITY(0, 1) NOT NULL

這是我最初的解決方案,這就是 Ladislav 所提到的。

NavigationPageID列的 SQL 是:

[ID] INTEGER PRIMARY KEY FOREIGN KEY REFERENCES [Page](ID) NOT NULL

實體框架尚不支持唯一鍵,因此實際上忽略了此信息,並映射了一對多關系。 在 EF 中使用一對一關系的唯一方法是通過共享主鍵(導航的 ID 將是 FK 到頁面的 ID)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM