2009-07-30 74 views
0

我創建了一個CustomCulture類表單CultureInfo。ASP.NET中的自定義文化信息

這裏是我的代碼:

public class CustomCulture : CultureInfo 

{
私人字符串_parent;
private string _name;
private string _description;

public CustomCulture(string parentCulture, string myCultureName) : base(parentCulture) 
    { 
     _parent = parentCulture; 
     _name = myCultureName; 
     _description = String.Format("custom culture({0})", _name); 
    } 
    public override string Name 
    { 
     get 
     { 
      return _parent + "-" + _name; 
     } 
    } 
    public override CultureInfo Parent 
    { 
     get 
     { 
      return new CultureInfo(_parent); 
     } 
    } 
    public override string EnglishName 
    { 
     get 
     { 
      return _description; 
     } 
    } 
    public override string NativeName 
    { 
     get 
     { 
      return _description; 
     } 
    } 

}

public partial class _Default : System.Web.UI.Page 

{ 私人DefCulture.CustomCulture ABC =新DefCulture.CustomCulture( 「EN-AU」, 「ABC」);

protected override void InitializeCulture() 
{ 
    Thread.CurrentThread.CurrentUICulture = abc; 
} 

....

我想實現的是,例如,如果我創建一個自定義的文化EN-AU-ABC, 當前頁面可以使用本地資源文件的Default.aspx。 EN-AU-abc.resx,

,但我無法得到它的工作,當前頁面總是加載爲Default.aspx.resx

+0

您想如何處理自定義文化?你爲什麼認爲你需要一個? – 2009-07-30 05:45:36

+0

你能不能發佈你的代碼........ – 2009-07-30 06:23:12

+0

只是出於好奇,你發現/發明了什麼文化,不能適當地代表一種現有的文化類型? – 2009-07-31 00:10:19

回答

1

PB,雷克斯L:兩種文化不支持.NET是非常通常需要:en-ID,es-US。我喜歡這一點,因爲你沒有遇到.NET的這種侷限性,你選擇採取一種居高臨下的態度 - 因爲顯然,一個人提出的問題你沒有答案,一定不知道他們在做什麼。爲什麼你認爲微軟在.NET 2.0中引入了CultureAndRegionInfoBuilder類?

2

嘗試安裝自定義文化。請參閱Microsoft Locale Builder以創建.msi並運行它來安裝自定義區域設置(需要Vista或更高版本)。我能夠通過App_GlobalResources獲得它在Vista上的工作。

BTW,私人使用的擴展自定義區域需要-X-,例如, EN-AU-X-ABC。請參閱Constructing language tags