你需要在数据库中存储翻译后的值。 如果只有几种语言且不会改变,可以为每种语言添加一列(NameEn、NameEs、NameFr等)。这有点违反规范化原则,但可以使生活更轻松。 另一种数据库方法是创建一个包含所有翻译的表: Localize - Field - Locale - Translation 然后对于类别名称,您将有三个记录,每种语言一个。您只需按字段和区域设置查询表格即可。
一种常见的方法是通过创建单独的翻译表来本地化数据库中至少需要本地化一个列的每个表。这通常是我们在项目中所做的。数据库数据-> 本地化到数据库中。视图/UI字符串-> 本地化到resx文件中。请看这里的答案:存储数据本地化版本的良好数据库表设计 编辑:与链接相反,我们通常将“默认”语言存储在原始表中,因此实际上不需要有翻译条目。例如,如果您的表“类别”包含列Id和Name,则对应的翻译表“Categories_Translation”可以包含列CategoryId,LanguageCode,Name_Tx,其中Name_Tx包含“Name”的语言代码“LanguageCode”中的翻译文本。