繁体   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