gpt4 book ai didi

c# - .NET 2005 - 通过 IIS 的测试作为 x86 运行。单元测试以 x64 运行

转载 作者:行者123 更新时间:2023-11-30 22:29:56 25 4
gpt4 key购买 nike

我在这里遇到了一些难题。

我的开发箱是 64 位的,windows 7。我所有的项目都编译为“任何 CPU”。该项目引用了 64 位版本的第 3 方软件

当我运行不使用任何 Web 引用的单元测试时,它可以正常工作。我可以看出它作为 64 位进程运行。我可以调用我的命令,它们工作正常。

但是,每当我运行一个调用 Web 服务调用到我自己的 PC 的测试时,该代码返回告诉我它正在以 32 位/x86 运行。 Web 服务与单元测试完全相同,但它测试 Web 服务/SOAP 代理(实际上它调用相同的代码,除了通过 Web 服务)。

我一直在绞尽脑汁想弄明白这个问题。我已经检查了所有第 3 方 dll,并确保它们被编译为 32/64 位,并通过快速单元测试进行了验证。我不确定为什么通过 IIS 的任何东西都会将它变成 32 位。

似乎任何通过 IIS 运行的代码都以 32 位和 64 位运行。

有什么想法吗?

最佳答案

我遇到了在适用于 Windows 7 64 位的 AnyCPU 编译中引用的 32 位 DLL 导致我的应用程序出错的问题。我发现我需要执行以下操作:

打开 IIS > 深入应用程序池 > {您的应用程序池} > 高级设置并将启用 32 位应用程序属性设置为 True。

不确定这是否与您的问题具体相关,但可能需要检查一下?

关于c# - .NET 2005 - 通过 IIS 的测试作为 x86 运行。单元测试以 x64 运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9948269/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com