Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 加载其他语言的资源_C#_Resources_Load_Translation - Fatal编程技术网

C# 加载其他语言的资源

C# 加载其他语言的资源,c#,resources,load,translation,C#,Resources,Load,Translation,我有一个应用程序,它与翻译资源一起工作。这很有效。 现在,我有一个特殊的要求。为此,我必须加载另一种语言的资源dll(例如,应用程序启动并使用英语,然后我还必须加载德语翻译),并查看它的翻译 有没有一种简单的方法可以做到这一点?您需要加载resourcemanager,如果您需要特定语言的资源,您需要使用特定的区域性来请求它们,使用: using System.Resources; using System.Reflection; Assembly gerResAssembly = Assem

我有一个应用程序,它与翻译资源一起工作。这很有效。 现在,我有一个特殊的要求。为此,我必须加载另一种语言的资源dll(例如,应用程序启动并使用英语,然后我还必须加载德语翻译),并查看它的翻译


有没有一种简单的方法可以做到这一点?

您需要加载resourcemanager,如果您需要特定语言的资源,您需要使用特定的区域性来请求它们,使用:

using System.Resources;
using System.Reflection;

Assembly gerResAssembly = Assembly.LoadFrom("YourGerResourceAssembly.dll");
var resMgr = new ResourceManager("StringResources.Strings", gerResAssembly);
string gerString = resMgr.GetString("TheNameOfTheString");
GetObject(String, CultureInfo)
您可以使用以下方法创建所需的区域性:

new CultureInfo(string name)

这个名字是文化的名字:“恩”英语,“德”德语。。。您可以在以下链接上看到完整列表:

您可以使用 与您需要的具体信息一起调用。 例如:

using System.Resources;
using System.Reflection;

Assembly gerResAssembly = Assembly.LoadFrom("YourGerResourceAssembly.dll");
var resMgr = new ResourceManager("StringResources.Strings", gerResAssembly);

// for example german:
string strDE = resMgr.GetString("TheNameOfTheString",  new CultureInfo("de"));
// for example spanish
string strES = resMgr.GetString("TheNameOfTheString",  new CultureInfo("es"));
`

CultureInfo.GetCultureInfo(string name)
using System.Resources;
using System.Reflection;

Assembly gerResAssembly = Assembly.LoadFrom("YourGerResourceAssembly.dll");
var resMgr = new ResourceManager("StringResources.Strings", gerResAssembly);

// for example german:
string strDE = resMgr.GetString("TheNameOfTheString",  new CultureInfo("de"));
// for example spanish
string strES = resMgr.GetString("TheNameOfTheString",  new CultureInfo("es"));