<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"
    meta:resourcekey="PageResource1" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>网站首页</title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:Label ID="Label1" runat="server" Text="Label" meta:resourcekey="Label1Resource1"></asp:Label>
    </form>
</body>
</html>using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;using System.Threading;
using System.Globalization;
public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
        Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture;
        Response.Write(Thread.CurrentThread.CurrentCulture.Name);
    }
}App_LocalResources文件夹中已经有两个文件:Default.aspx.en-US.resx、Default.aspx.resx为什么不能切换到en-US呢?

解决方案 »

  1.   

    LocRM= new ResourceManager("LocProject.strings", typeof(WebForm1).Assembly);
      

  2.   

    在Global.asax.cs: protected void Application_AcquireRequestState( object sender, EventArgs e )
      {
        System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");
        System.Threading.Thread.CurrentThread.CurrentUICulture = culture;    
      }
      

  3.   

    页面中可以这样设置:
    protected override void InitializeCulture()
    {


    UICulture = "en-US";
    Culture = "en-US";
    Thread.CurrentThread.CurrentCulture =
    CultureInfo.CreateSpecificCulture("en-US");
    Thread.CurrentThread.CurrentUICulture = new
    CultureInfo("en-US");

    base.InitializeCulture();
    }
      

  4.   

    是的,在asp.net 2.0里可以按楼上的,指适用在2.0