簡體   English   中英

如何在ASP .NET Web應用程序中使用動態本地化

[英]How to use dynamic localization in an asp .net web application

我已將名為language.resx的資源文件添加到我的App_GlobalResources文件夾中,這使我能夠訪問諸如App_GlobalResoureces.Language.MyString之類的字符串。 如何使它動態化? 因此,如果我有一個名為ResourceID的字符串,如何從資源文件中提取正確的資源?

到目前為止,我嘗試了這個:

string s = "MyString";

System.Resources.ResourceManager = new System.Resources.ResourceManager("App_GlobalResources.Language", System.Reflection.Assembly.GetExecutingAssembly());
string lang = mngr.GetString(s);

但這不起作用(它說找不到命名空間之類的東西)。

已經建議為此使用數據庫,但是我不希望這樣做,因為它只是我要翻譯的幾個枚舉。

怎么樣:

string s = "MyString";
var mngr = new System.Resources.ResourceManager("Resources.Language", 
    System.Reflection.Assembly.Load("App_GlobalResources"));
string lang = mngr.GetString(s);

這很容易。 為什么這么簡單的東西總是那么難找

正確的代碼是:

App_GlobalResources.Language.ResourceManager.GetString("MyString");

這是Visual Studio生成的代理代碼。 如果您想自己定位文件(我認為動態的含義),可以按照代碼sinnpet aobe進行。 實際上,我是通過復制資源文件所具有的屬性的“獲取”訪問器的內容來獲得此代碼的:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM