0

我正在用 C# 编写一个 ASP.NET Web 服务。在昨天之前,如果我想调试它,我只需按 F5,ASP.NET 开发服务器就会开始托管我的服务。断点将被启用并且可以工作。最近这个功能消失了。现在,当我开始调试时,开发服务器已启动,但托管了旧版本的 Web 服务,并且断点不起作用。我收到版本不匹配的警告。

如果我重新构建所有内容,或者更改程序集版本,甚至更改 DLL 的文件名,这都无济于事。如果我删除整个临时文件夹也无济于事%TEMP%\Temporary ASP.NET Files。旧的 web 服务将从谁知道在哪里被拉出,并再次存储在 temp 文件夹中。

昨天之前的主要变化是我安装了 IIS。安装在那里的 Web 服务按预期工作,但我也需要调试它。我认为问题在于我安装了 Web 服务(使用 vdproj),所以我卸载了它,但这也没有帮助。

如何防止系统缓存旧版本的 Web 服务。无论如何,这个旧版本存储在哪里?

4

1 回答 1

2

检查 ASP.NET 项目的 Web 设置。要返回使用 ASP.NET 开发服务器进行 F5 调试,请确保在“服务器”标题下选中“使用 Visual Studio 开发服务器”单选按钮。我还指定了一个特定端口,以便我的解决方案中的其他项目可以一致地引用它(在我的情况下,我正在处理一个 Web 服务)。您很有可能会发现“用户本地 IIS Web 服务器”单选按钮被选中。

希望有帮助。

编辑:这里的问题不是关于 IIS,而是关于更改 Web 服务的目标构建输出文件夹。必须是bin\,否则开发服务器找不到它。重建没有帮助,因为它会更改新文件夹中的 dll 文件,但旧文件将在 bin 文件夹中保持不受干扰。

于 2013-02-12T12:10:14.870 回答