No default or neutral resource given for 'reso

2019-06-21 21:02发布

I am building a UWP app which supports two languages (en and de). I have created both Resource.resw files and and a testfile.xml which is basically the datasource of my application. If I run the app directly from Visual Studio (DEBUG or RELEASE mode) it's working fine, but once I install it from the store or sideload it to the device via WinAppDeployCmd.exe it does not load the resource from Resources.resw

This is my file structure inside the Strings directory:

strings folder

I have the link to the testfile specified in the Resources.resw file like this: resources.resw

Once the app is launched I use a ResourceLoader to retrieve the value of the Testfile key to load the right (en or de) file.

var loader = new Windows.ApplicationModel.Resources.ResourceLoader();
var value = loader.GetString("Testfile");
var testfile = Path.Combine(Package.Current.InstalledLocation.Path + "/Strings/", value);

During the build process these warnings show up in the output window

MakePRI : warning 0xdef01051: No default or neutral resource given for 'Files/Project/Strings/testfile_de.xml'. The application may throw an exception for certain user configurations when retrieving the resources.
MakePRI : warning 0xdef00522: Resources found for language(s) 'en,de' but no resources found for default language(s): 'en-US'. Change the default language or qualify resources with the default language.

Do you have any idea why the resource is not loaded when the app is installed via the store or sideloaded?

2条回答
仙女界的扛把子
2楼-- · 2019-06-21 21:40

Set <DefaultLanguage>en</DefaultLanguage> for every .csproj in your solution

查看更多
forever°为你锁心
3楼-- · 2019-06-21 22:04

Open the package manifest for your app, default setting is en-US. Change that to en !

查看更多
登录 后发表回答