欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

深入Resource實(shí)現(xiàn)多語言支持的應(yīng)用詳解

 更新時(shí)間:2013年05月13日 17:42:02   作者:  
本篇文章是對(duì)Resource實(shí)現(xiàn)多語言支持的應(yīng)用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下

首先為假設(shè)有一個(gè)應(yīng)用程序CAStudy,接著右鍵添加一個(gè)資源文件Resource1.resx。

Resource1.resx里面如下:

image

Main函數(shù)如下:

static void Main()
{
    ResourceManager resourceManager = new ResourceManager(
        "CAStudy.Resource1",
        Assembly.GetExecutingAssembly());

    Console.WriteLine("String1 : " + resourceManager.GetString("String1"));
    Console.WriteLine("String1 : " + Resource1.String1);
    Console.ReadLine();
}

使用的ResourceManager構(gòu)造函數(shù)如下:

[SecuritySafeCritical]
public ResourceManager(string baseName, Assembly assembly);

在應(yīng)用程序編譯的時(shí)候Resource1.resx就會(huì)被編譯成Resource1的一個(gè)類。所以如果你不知道baseName是什么,也可以這樣:

ResourceManager resourceManager = new ResourceManager(
                Resource1.ResourceManager.BaseName,
                Assembly.GetExecutingAssembly());

或者你查看IL代碼,可以發(fā)現(xiàn)如下:

clip_image002 

運(yùn)行結(jié)果如下:

clip_image002[5] 

假設(shè)我們要支持 英語-美國(guó)(en-US) 的人來訪問的話:

clip_image002[7]

那么我們可以復(fù)制Resource1.resx ,從而生成Resource1.en-US.resx。

注意除了中間多出來了en-US之外,其他都相同,

當(dāng)然,如果你需要支持中文-臺(tái)灣,那么可以生成Resource1.zh-TW.resx.

Resource1.en-US.resx內(nèi)容如下:

clip_image004 

可以看到,現(xiàn)在的是Hello。

使用的時(shí)候只需要修改

Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");

為什么修改 CurrentUICulture 就可以了呢?

// 摘要:
// 獲取或設(shè)置資源管理器使用的當(dāng)前區(qū)域性以便在運(yùn)行時(shí)查找區(qū)域性特定的資源。
public CultureInfo CurrentUICulture { get; set; }

完整的Main函數(shù)如下:

static void Main()
{
  ResourceManager resourceManager = new ResourceManager(
    Resource1.ResourceManager.BaseName,
    Assembly.GetExecutingAssembly());

  Console.WriteLine("String1 :" + resourceManager.GetString("String1"));
  Console.WriteLine("String1 :" + Resource1.String1);

  Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
  Console.WriteLine("String1 :" + resourceManager.GetString("String1"));
  Console.WriteLine("String1 :" + Resource1.String1);

  Console.ReadLine();
}

運(yùn)行結(jié)果如下:

clip_image002[9]

相關(guān)文章

最新評(píng)論