我有很多从文件中读取预期结果的集成测试。我的测试通过相对路径访问这些文件。 x86 与 Any CPU 的相对路径深度不同。例如,当我的测试在 x86 下运行时,它们需要读取以下文件“../../TestResults/MyTest.csv”,但在任何 CPU 下它们需要访问“../TestResults/MyTest.csv”
到目前为止,我在每个测试夹具中都有以下常量:
private const string platformDependentPrefix = "";
如果我为 x86 运行测试,我需要在每个测试夹具中手动将“”更改为“../”。
有没有办法让它自动化?
最佳答案
非常 hacky 的方式,但有效:
public static string Platform
{
get
{
if (IntPtr.Size == 8)
return "x64";
else
return "x86";
}
}
您还可以访问 CSharpProjectConfigurationProperties3.PlatformTarget
属性(property)。
关于c# - 如果我的代码是为 x86 或任何 CPU 编译的,我的代码如何在运行时检测到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6587767/