Visual Studio 2008 64位调试策略

5
我们正在转换为全面的64位开发环境。不幸的是,VS 2008以及更重要的是它内置的Web服务器以32位模式运行。当调试引用了64位程序集(例如Oracle.DataAccess)的代码时,我们会遇到可怕的System.BadImageFormatException错误。
有没有人能提供一些在VS中调试具有64位依赖项的代码的策略?我想我们可以使用32位Oracle提供程序,但我们希望尽可能地模拟生产环境。

为什么不使用IIS来部署和调试您的应用程序? - Igor Korkhov
我必须同意Igor的观点,这正是我目前正在做的事情...在你的Web项目的属性调试选项卡中,切换到IIS而不是Cassini。 - Nick Craver
4个回答

1

我在64位的Vista上有一个类似的设置,我的网站部署在IIS中 - 这个网站已经成功地在32位和64位上运行和调试过。

我发现最大的问题是在混合环境中工作,其中一些项目团队成员仍在32位Windows上(包括XP和Vista)。

这会导致在项目引用Oracle.DataAccess时出现问题,我只能通过在web.config文件中添加bindingRedirect条目以指向正确版本的程序集来解决这个问题。


0

在你的电脑上设置本地IIS并将其设置为32位模式运行

http://kb.parallels.com/en/2131 如果您启用了调试模式,您可以像使用集成开发服务器一样使用它。但您不必担心32/64位组件。


0

如果您使用IIS7,您可以选择32/64位模式。然后,您将不得不让您的项目与IIS一起启动,而不是cassini,这需要一些工作,但我认为至少可以解决Oracle的问题。老实说,我不知道在附加32位调试器时如何处理所有这些。


0

我们使用VMware主机为每个网站开发人员提供自己的虚拟Web服务器。您可以使用完整的IIS(如@KevinWon建议的那样),并在其中安装64位版本的调试器。我不知道我们的人员具体做什么-这是我前几天在喝咖啡时了解到的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接