我的Visual Studio 2015解决方案包含以下项目:
- .NET程序集
- UWP程序集
- PCL程序集
- .NET单元测试库
- UWP单元测试应用程序
PCL程序集包含一个通过项目中的RESX文件嵌入的字符串资源表以及一个简单的类,允许调用者从字符串资源表中获取字符串。PCL旨在允许在.NET和UWP程序集之间共享字符串。
当运行.NET Unit Test Library时,单元测试调用.NET程序集,后者从PCL程序集中获取字符串。这一点如预期一样工作。
当运行UWP Unit Test App时,单元测试调用UWP程序集,后者从PCL程序集中获取字符串。但是会出现以下异常消息:
System.Resources.MissingManifestResourceException:无法为包[guid]中的资源文件[blah]加载资源。
我尝试了这个解决方法,但是调用GetForViewIndependentUse()
失败,并显示"ResourceMap Not Found"的COMException
。
发生了什么?这种调用链对于.NET单元测试堆栈是可以工作的。我已检查确保所有程序集的中性语言设置为"英语"。最好的方法是什么,以便在.NET程序集和UWP程序集之间共享字符串表?