我有一个支持多语言的 ASP.NET MVC3 应用程序。几乎每个单词都支持多语言,并且在每次页面请求时,我都会从数据库中获取当前所选语言的所有单词到 a 中List
,并为每个单词使用它Word
:我MeaningID
为每个元素保留并从List
. 方法成本高,但比为每个Word
.
不过,我想知道是否有一个我可以在整个项目中全局使用的数据结构,它仅在用户更改所选语言时从数据库中加载。我可以将类似列表结构的会话用于此目的吗?
编辑:为了让事情更清楚,我发布了我的数据库表。
--Word-- --WordBase-- --Language--
ID ID ID
Text Text Name
BaseID
LanguageID
可以看出,WordBase
s 是Word
s 依赖于 a 的含义Language
。示例数据是:
--Word-- --Base-- --Language--
1;Hallo;1;1 1;Hello 1-Deutsch
2;Hello;1;2 2;Good 2-English
3;Gut; 2;1
4;Good; 2;2