5

我很好奇是否有人在使用 ResourceManager 创建单元测试时遇到任何问题。我正在使用 Visual Studio 测试版,并且在测试期间似乎没有加载附属程序集。当我尝试为另一种文化获取资源时,测试总是失败并且资源管理器总是回退到默认文化。完全相同的代码在正常应用程序中运行良好。

4

3 回答 3

4

这让我朝着正确的方向前进。将文件添加到部署配置没有帮助,但禁用部署确实有效。

如需将来参考,请访问此博客文章并向下滚动到“管理测试运行”部分,了解有关创建测试配置以及如何禁用部署的详细信息

于 2008-09-19T05:29:16.740 回答
1

如果您正在运行 MSTest 并且想要访问中性区域性以外的资源,则需要确保将特定区域性的附属程序集部署到解决方案文件夹中的测试目录。

只需将此属性添加到您的单元测试中:

[DeploymentItem( @"de-DE\AssemblyName.resources.dll", "de-DE")]

这会将资源程序集部署到指定区域性相关子目录中的测试目录。

来源

于 2020-06-17T13:02:20.887 回答
0

过去我在卫星组件上遇到过类似的问题。尝试将附属程序集添加到单元项目依赖项中。在 Visual Studio 测试中 - 编辑测试运行配置。选择部署并在此处添加文件。

在执行所有应用程序时,dll 等都被复制到一个特殊的目录中。强命名的 dll 可能会被忽略,因为它们应该在 GAC 中。

于 2008-09-19T04:30:55.837 回答