我需要有一個實體具有兩個獨立的候選鍵,其中一個是主鍵,它是代理標識鍵,另一個是替代鍵代表真正的獨特屬性。我需要在我的實體中分別擁有它們。請注意,我並不是指複合鍵或多列鍵。無論如何,我需要在ADO.NET數據模型中的一個實體上有這個。有可能這樣做嗎?如果是,請指導我。ADO.NET數據模型中的替代/候選鍵
擁有第二個關鍵的原因是我需要另一個實體與該關鍵字上的第一個實體有關聯(和外鍵)關係。
更新:我在以下問題中發現了與我非常相似的情況: http://social.msdn.microsoft.com/Forums/en/adodotnetentityframework/thread/a248632a-d305-4c15-8e57-6742457cca94 EF v1似乎不支持此功能。有人知道V4(字面上是第二個版本)是否具有此功能?我發現了以下內容,但似乎並未顯示此功能已添加到當前版本的任何線索:http://blogs.msdn.com/b/adonet/archive/2009/05/11/update-on-the-entity-framework-in-net-4-and-visual-studio-2010.aspx
您的問題很不清楚。您似乎有兩個在此表空間上唯一的鍵,其中一個是自動生成的整數序列鍵,另一個是唯一的ID。你希望它們都顯示爲表的主鍵?在這種情況下,不可以,只能選擇一個作爲主鍵。每個表只有一個主鍵。但是你可以在另一列建立一個索引。 – 2011-03-15 03:21:34
@Stephen好的,也許這是因爲我已經在關係數據模型語言中表達了這個問題。我知道你當然只能有一個主鍵。這就是爲什麼我將其他人稱爲關係數據庫語言中的備用關鍵字的原因。它確實是一個獨特的屬性。您可以輕鬆地對任何非主鍵屬性設置此唯一性約束,並將其設置爲「備用鍵」。我只想知道是否有可能從ADO.NET EDM/EDM設計器中產生這種約束?或者如果我直接將它添加到底層表,它是否會識別這個約束? – amirmonshi 2011-03-15 03:32:44
您提到EDM。你在使用實體框架嗎? – 2011-03-15 06:12:32