我想在App_GlobalResources文件夾中爲名爲「shopping.en-sg.resx」的新加坡英語(en-sg)創建資源文件。在ASP.NET中創建自定義區域
編譯過程中出現錯誤。
錯誤1命名空間 '資源' 已經包含了定義 '購物' C:\ WINDOWS \ Microsoft.NET \框架\ V2.0.50727 \臨時 ASP.NET 文件\網絡\ 2cd6afe9 \ 737b0a13 \ App_GlobalResources.vomuzavz.1.cs 26
谷歌搜索後,我發現「EN-SG」不是默認的文化,我要創建自定義的文化吧。我不知道這個的詳細步驟。
我應該怎麼做才能創建文化並消除編譯錯誤?
我按照MSDN的例子中,創建一個名爲 「shopping.x-EN-US-sample.resx」 文件,把下面的代碼到的BasePage的功能(保護覆蓋無效InitializeCulture()):
CultureAndRegionInfoBuilder cib = null;
cib = new CultureAndRegionInfoBuilder(
"x-en-US-sample", CultureAndRegionModifiers.None);
CultureInfo ci = new CultureInfo("en-US");
cib.LoadDataFromCultureInfo(ci);
RegionInfo ri = new RegionInfo("US");
cib.LoadDataFromRegionInfo(ri);
cib.Register();
ci = new CultureInfo("x-en-US-sample");
但是,編譯錯誤仍然存在。
更新:
,您可以輕鬆創建一個空的網站,兩個文件「shopping.en-sg.resx」,並在App_GlobalResources文件夾「shopping.resx」重現該問題。
我應該在哪裏放置這段代碼以避免錯誤? – Billy 2009-08-20 07:43:28
此代碼只需要在需要額外文化的機器上運行一次。因爲它已經存在,也許你會得到錯誤? – 2009-08-20 07:46:05
把代碼放在global.asax中? 如果我將「en-sg」更改爲「en-us」,那很好。 我只想要一段代碼,我可以簡單地把它放在某個地方,然後我可以使用shopping.en-sg.resx – Billy 2009-08-20 07:59:44