1
如果我正確理解其他幾個帖子,如果它們不共享相同的主鍵,那麼當前不可能將實體映射到多個表。將實體映射到多個表(EF4,WCF RiaServices) - 國際化
這是真的嗎?我想知道的是國際化應該如何處理下面的db設計和EF。
我有一個國際化的數據庫,文本存儲在不同的表中。 例如
CREATE TABLE Product(
ProductID int IDENTITY(1,1) NOT NULL,
ProductGroupID int NOT NULL,
...
CONSTRAINT PK_Product PRIMARY KEY CLUSTERED
(
ProductID ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY
) ON PRIMARY
CREATE TABLE Product_i18n(
ProductID int NOT NULL,
LanguageID int NOT NULL,
ProductName nvarchar(150) NULL,
Description nvarchar(max) NULL,
...
CONSTRAINT PK_Product_i18n PRIMARY KEY CLUSTERED
(
ProductID ASC,
LanguageID ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY
) ON PRIMARY
所以該產品由兩個表組成。在表Product中存儲語言獨立部分,並在Product_i18n表中存儲語言相關部分。 這兩個表與1:n關聯物理鏈接,但邏輯上它是1:1關聯,因爲在某個操作中我總是需要一種語言。
所以我想這兩個表,其中包括列
- 的ProductID
- ProductGroupID
- LanguageID
- 產品名稱
- 說明... 一個單一的實體產品組合
如果這個wou有可能的話,我可以將國際化表格從我的模型中刪除,以使其更加清晰。
EF4有可能。歡迎任何有關國際化的指導和經驗來解決這個問題。
非常感謝
烏韋
您可以使用參數化視圖,這可能會更好,並允許輕鬆添加新的文化。 – 2011-10-03 14:36:54