如何解决ASP.net维护书签和链接URL的CurrentUICulture
|| 因此,我有一个使用两种不同语言的网站,并且将其设置为从基于CurrentUICulture的资源文件中提取文本。 我有两个链接按钮,用户可以单击它们在英语和俄语之间切换。 例:Thread.CurrentThread.CurrentUICulture = new CultureInfo(\"ru-RU\");
这样就可以切换语言了。但是我想将当前的语言以某种方式反映在当前的URL中,以用于添加书签或发送特定语言的页面链接。
像这些示例中的:
www.mysite.com/contact/index.aspx?lang=ru
www.ru.mysite.com/index.aspx
www.mysite.com/ru/contact.aspx(尽管此目录实际上不存在)
我也想知道如何在两种不同的语言之间最好地隔离Google Analytics(分析)数据。
解决方法
我建议使用HttpModule读取此参数。您是否考虑过仅将其存储在用户的持久性Cookie中?
看到此链接-
使用HttpModule进行本地化是否安全?
, 在url中传递language参数,并在InitializeCulture中解析此参数以设置ѭ1。您可以对语言参数使用查询字符串或路由。
除url外,您还可以使用其他状态管理选项作为后备来决定语言。但是,通常可以使用URL重置状态是一件好事。
对于ASP.NET中的“切换语言”按钮,可以使用:
<asp:Hyperlink>
,用的语言
NavigateUrl中的参数
<asp:LinkButton>
,搭配
Response.Redirect在事件中
处理程序
也可以看看:
在ASP.net中处理多语言站点中URL的最佳方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。