簡體   English   中英

本地化表和實體框架

[英]Localized tables and Entity Framework

我有一個場景,我需要在我的數據庫中的對象的本地化值。

假設您有一個可以創建動物的應用程序,如果用戶是英語,動物的“名稱”屬性的值將在UI中輸入為“貓”,而它將以法語輸入為“聊天”。

動物培養表將包含2個指向父表中相同動物的記錄。

當讀回值時,如果用戶文化中不存在“名稱”的值,則將使用默認值(最初創建對象的值)。 下圖演示了如何在SQL中存儲數據:

替代文字

我正在嘗試使用實體框架將此模式映射到對象模型,我對於解決問題的最佳方法有點困惑。

EF適合這個嗎? 我應該使用EF4嗎?

.NET RIA Services將使用此EF模型。

謝謝,

Pierre-Yves Troel

我在類似情況下所做的是創建一個視圖說LocalizedAnimals,它是該2表結構的平面表示,並為該視圖創建了EF模型。 因此,當我需要顯示說法國動物數據時,我會過濾那些LocalizedAnimals並因此得到漂亮的簡單對象列表。

像這樣的東西:

var localizedAnimals = myContext.LocalizedAnimals.Where(
                           p => p.CultureName == Thread.CurrentThread.CurrentUICulture.Name
                       );

我不確定你是否想在數據庫中這樣做。 我認為使用定義特定於文化的名稱的配置文件或資源會更明智。

您還可以查看Microsoft有關國際化和本地化的文檔。

暫無
暫無

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

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