1

我在.net4.0 上为我的项目使用Visual Studio 2010,我发现每次我对我的项目进行更改时,我都会构建并运行,但我看不到我的更改。我发现这种情况发生了一两次,主要是在我的 Web 服务项目中。我不是 Web 服务的专业人士,我是第一次遇到这个问题,所以我会感谢任何能告诉我我的项目出了什么问题以及如何解决它的人。 编辑 我的 asmx 文件是我添加其他方法的地方,但在运行 F5 时看不到它

4

2 回答 2

4

当您更改 Web 服务或站点中的编译代码时,您需要确保重新启动托管该服务或站点的 Web 服务器。

您可能正在使用 ASP.Net 开发服务器。尽管 Visual Studio 会为您启动此服务器,但它不会在您重新构建时自动重新启动它。因此,服务器仍将引用您更改的程序集的先前版本。

在 Windows 系统托盘中,您应该会看到一个或多个图标,该图标描绘了一个在左下角重叠的紫色齿轮的网页。

在这个例子中有三个:

在此处输入图像描述

您可以通过右键单击其图标并选择“停止”来停止服务器。(如果您有多个,当您将鼠标悬停在图标上时,您将通过识别工具提示中显示的端口号来学习识别需要停止的端口号。)Visual Studio 将在需要时重新启动它。

当您对服务或站点进行更改时,请使用以下工作流程:

  1. 进行代码更改
  2. 停止 ASP.Net 开发服务器
  3. 重建包含更改的项目

客户端代码与服务器端代码

如果您要更改客户端代码(HTML 或 JavaScript),则可能需要强制 Web 浏览器刷新其缓存。在 Windows 中,这通常通过在浏览器中按 CTRL+F5 来完成(有关更多信息,请参阅 refreshyourcache.com/en/cache)。如果您正在更改编译代码 (C#),并且重新启动服务器没有帮助,请尝试重新启动 Visual Studio,然后执行 Build -> Clean Solution,然后重新构建。

于 2013-08-19T04:17:59.453 回答
1

如果您在 ASP.Net 开发服务器中遇到问题,我认为您最好在 IIS 中创建一个虚拟目录并在那里托管您的 Web 服务。这样,您应该能够进行更改,只需构建它(不要运行它),并且应该在您的虚拟目录中可用,您只需浏览到 webservice。然后您不必一次又一次地按 F5,也不必担心 ASP.NET 开发服务器的实例。

以下文章包含有关如何在 IIS 7.0 上执行此操作的良好分步说明。这篇文章是关于托管一个网站的——然而,托管一个网络服务并没有什么不同。

http://www.codeproject.com/Articles/28693/Deploying-ASP-NET-Websites-on-IIS-7-0

于 2013-08-19T03:46:17.850 回答