C# GetResourceSet 找不到默认资源resx文件
C# GetResourceSet can't find the default resource resx file
我尝试加载特定资源集或默认资源集(如果未找到特定资源集)。
这是代码:
ResourceSet resourceSet = MyLib.MyResource.ResourceManager.GetResourceSet(
culture: someCulture,
createIfNotExists: false,
tryParents: false
);
当特定的 resx 文件存在时,它工作得很好,但是对于文化 {en},它是对应于文件 MyResource.resx 的默认文化,它不起作用(这意味着 ressourceSet = null )
但是如果我 copy/paste 文件 "MyResource.resx",并将其重命名为 "MyResource.en.resx",然后将其包含在我的解决方案中,它突然起作用了
我的问题是:如何指定 {en} 匹配默认的 "MyResource.resx" 文件?
试试这个:
ResourceSet resourceSet = MyLib.MyResource.ResourceManager.GetResourceSet(
culture: CultureInfo.InvariantCulture,
createIfNotExists: false,
tryParents: false
);
要获取有关 CultureInfo.InvariantCulture
的更多详细信息,请参阅 office 文档:
https://docs.microsoft.com/en-us/dotnet/api/system.globalization.cultureinfo.invariantculture
我尝试加载特定资源集或默认资源集(如果未找到特定资源集)。
这是代码:
ResourceSet resourceSet = MyLib.MyResource.ResourceManager.GetResourceSet(
culture: someCulture,
createIfNotExists: false,
tryParents: false
);
当特定的 resx 文件存在时,它工作得很好,但是对于文化 {en},它是对应于文件 MyResource.resx 的默认文化,它不起作用(这意味着 ressourceSet = null )
但是如果我 copy/paste 文件 "MyResource.resx",并将其重命名为 "MyResource.en.resx",然后将其包含在我的解决方案中,它突然起作用了
我的问题是:如何指定 {en} 匹配默认的 "MyResource.resx" 文件?
试试这个:
ResourceSet resourceSet = MyLib.MyResource.ResourceManager.GetResourceSet(
culture: CultureInfo.InvariantCulture,
createIfNotExists: false,
tryParents: false
);
要获取有关 CultureInfo.InvariantCulture
的更多详细信息,请参阅 office 文档:
https://docs.microsoft.com/en-us/dotnet/api/system.globalization.cultureinfo.invariantculture