实现多语言网站(Asp.Net 2.0)
在Asp.Net 2.0中可以重写页面代码文件中的InitializeCulture()来设置页面的UICulture。例如:
例如:对Test.aspx执行以上操作后,会在“App_LocalResources”生成Test.aspx.resx,然后假如还需要其英文资源,可以拷贝一份,把其重命名为Test.aspx.en.resx,然后编辑修改其内容即可。
这样页面就可以根据Session["UICulture"]自动生成不同的语言界面。
1
protected override void InitializeCulture()
2
{
3
if (Session["UICulture"]!= null)
4
{
5
Page.UICulture = Session["UICulture"].ToString();
6
}
7
base.InitializeCulture();
8
}
当然现在还不能实现,必须生成页面的多语言的资源文件。打开页面文件,点击菜单栏中的“Tools”,点击“Generate Local Resource”,这样就会在“App_LocalResources”生成相应的页面资源文件。![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
例如:对Test.aspx执行以上操作后,会在“App_LocalResources”生成Test.aspx.resx,然后假如还需要其英文资源,可以拷贝一份,把其重命名为Test.aspx.en.resx,然后编辑修改其内容即可。
这样页面就可以根据Session["UICulture"]自动生成不同的语言界面。