DNN语言控制不起作用

时间:2016-12-16 21:43:07

标签: .net internationalization dotnetnuke

我在DNN 8下面有一些ASP.NET页面。我已经安装了斯洛文尼亚语,并且工具栏上出现了一对乡村旗帜图像,就像它应该的那样。 问题是我的CurrentCulture总是在我们身边。当前URL是[servername] / [pagename],没有文化中缀。美国国旗包含到同一URL的超链接([servername] / [pagename]),斯洛文尼亚国旗没有超链接。我试图手动添加URL中缀([servername] / en-us / [pagename]或[servername] / sl-si / [pagename]),但这些位置不存在。 我检查了语言设置 - 在URL中启用语言参数?复选框已勾选。 如何在URL中真正启用该语言中缀?我还应该配置什么?

1 个答案:

答案 0 :(得分:0)

使用语言中缀启用网址变体的解决方案: 转到管理员/网站设置,选择提前设置,然后选择网站别名;为URL添加带有中缀的别名(例如sl-si)。 这些别名应该是语言感知的。您可以手动将这些URL写入浏览器,并测试它们是否有效。

现在我们应该添加网页控件,允许用户在这些网址变体之间切换。 DNN提供该控制:

<dnn:LANGUAGE runat="server" ID="dnnLANGUAGE" ShowMenu="False" ShowLinks="True" />

您可以将其添加到任何网页中。 Bellow top of page添加另一行:

<%@ Register TagPrefix="dnn" TagName="LANGUAGE" Src="~/Admin/Skins/Language.ascx" %>

现在我仍在寻找一种方法将此控件添加到DNN的某些控件(例如 - 菜单工具栏)中,因此可以从我的所有模块中看到它。 有什么想法吗?