3

我在我的數據庫中有一個表[用戶]和另一個表[銷售人員]。 [銷售人員]定義了一個唯一的用戶標識,它使用外鍵映射到[用戶] .UserID。當我使用實體框架生成模型時,我在[用戶] - [銷售人員]之間獲得了一對多關係,這意味着每個用戶都有一個「銷售人員集合」,但我想要的是一個0..1-to -1關係,其中每個用戶對「銷售人員」具有可空的引用。實體框架 - 更改關係多重性

我試着擺弄XML並更改關聯的多重設置,但這隻會產生構建錯誤。我試圖實現的和在[User]中有一個可以爲空的SalespersonID並沒有什麼不同,它引用了[Salesperson] .SalespersonID,但是由於銷售人員只對特定用戶存在,所以感覺就像我只是混淆了我的[User]表結構讓關係在Entity Framework中指向正確的方式。

我能做些什麼來改變關係的多樣性嗎?

+0

你能提供一些更多的信息。什麼ORM?你目前的配置是什麼樣的? – 2009-11-13 01:20:15

+0

我不確定你在問什麼?我正在使用實體框架與MySQL數據庫。你指的是什麼「配置」? – 2009-11-13 01:21:42

+0

哦,對不起,我想當你說實體框架時,你使用的是一個對象關係映射器的通用術語。不是特定的產品。 – 2009-11-13 01:23:30

回答

2

使Salesperson本身成爲FK的PK爲User。 EF的GUI設計師將獲得正確的基數,因爲PK是唯一的。

+0

如果您願意,可以將其稱爲SalespersonId,但由於FK Salesperson.SalespersonId == User.UserId,無論它是什麼稱呼。然後,GUI設計人員可以推斷出正確的基數,數據庫將執行該基數。 – 2009-11-14 01:41:32

+0

我還沒有測試過,但是一旦我做了,我會標記答案(假設它有效!)。萬分感謝。 :) – 2009-11-15 22:43:39

+0

重新生成之前是否存在關係?在新桌上嘗試一下。這*確實爲我們工作。另外,如果User.UserId不是PK,請使用PK。 EF的GUI設計師可能會看到PK而不是唯一的約束。 – 2009-11-16 17:01:31