0

在此先感谢,我知道这是非常重复且被问到的问题,但我没有得到任何适当的解决方案,我为此参考了很多网站。

问题:我正在开发和订购网站,需要多种语言支持,如英语、西班牙语、法语、阿拉伯语和近 10 种语言。我如何管理从 css 到图像的所有东西,从数据库中获取记录很多东西都在我的脑海中进行设置。

我可以使用一种解决方案我可以为表中的每种语言创建字段,例如我需要为英语、西班牙语保留的描述字段......

在不使用任何第三方工具的情况下使用动态语言翻译的最佳方式是什么。

请告诉我解决方案。

如果你没有得到我的问题,请问我。

我需要绝望的帮助

提前致谢

4

2 回答 2

1

您可以将工作基于本地化和全球化

链接:http: //msdn.microsoft.com/fr-fr/library/ms247246%28v=vs.100%29.aspx

为了开始,您可以测试这些功能

Generating Default Resource File :

在 Visual Studio 设计器中,单击设计器图面或控件。

选择工具 --> 生成本地资源

将生成 App_LocalResources 文件夹中 Web 页面的基于 XML 的本地资源文件,其中包含页面上所有现有控件的 Text 和 ToolTip 值以及页面标题。

Generating Resource Files for Other Cultures:

在解决方案资源管理器中

右键单击“Default.aspx.resx”文件,然后单击复制

右键单击 App_LocalResources 文件夹,然后单击粘贴

右键单击“Default.aspx.resx 的副本”,然后单击重命名

为在扩展名前包含新语言和文化代码的资源文件键入新名称。

于 2012-08-31T13:25:26.637 回答
0

就数据库而言,解决方案是您将拥有一个Languages表,并且您的每个用户都将在数据库中根据其记录使用一种语言,或者用户可以从页面上的下拉列表中选择语言。我说的所有实体表UserStatusUserTypes等等都会有一个相关的语言表,比如:UserStatus_Lang,它将保存语言特定的文本,比如:

UserStatus Table
UserStatusId
1

UserStatus_Lang
UserStatusId_FK    LangId_FK    Text
1                  1            Online
1                  2            ******

保存时您将保存实体表的 ID,但在显示时您将显示_Lang表中的文本。

对于页面上的标签等控件,您将创建一个 table Pages,它将保存页面的页面名称,而不是另一个 tablePageControls来保存页面上存在的控件,而不是另一个 tablePageControlsText将针对页面控件保存语言特定文本。在 Page_Init 事件中,您将从数据库中获取页面控件及其文本(根据所选语言),并通过在页面上搜索来设置页面控件的文本。

我希望你对这个实现有一些想法。===============================修改=================== =================

页表

PAGEID     PAGENAME   [OTHER COLUMNS]

页面控制表

PAGECONTROLID      PAGEID_FK    PAGECONTROLNAME    [OTHER COLUMNS]

页面控制文本表

PAGECONTROLID_FK     LANGID_FK     PAGECONTROLTEXT

就您的描述而言,您必须像在 2 个表 TABLE1 中那样进行操作

ID          ITEM_NAME

比另一个表 TABLE1_LANG

ID_FK       LANGID_FK        DESCRIPTION

通过使用这种方法,当系统中引入新语言时,您无需修改​​结构。

于 2012-08-31T13:34:25.410 回答