2011-01-24 89 views
2

我为iis 7部署了一项Web服务,它一直在正常工作。 然后我想更新Web服务中Web方法的代码。iis上的Web服务未更新

我重新编译了服务,并用新的iis目录更新了dll。

我的问题是当我调用服务时,它会调用旧代码。

我试着改变传递给服务内部Web方法的参数数量,并且在调用它时仍然会看到我擦除的旧参数。

+0

您是否尝试清洁您的解决方案,然后重建? – 2011-01-24 13:44:14

回答

0

我猜测旧代码被缓存。尝试重新启动IIS。这应该清除旧代码的任何残余。

0

看来您需要更新您的服务参考。

转到正在使用该服务的项目,左键单击解决方案资源管理器中的服务引用,最后选择“更新服务引用”。

也许我错了,你做了,但你没有在你的问题中提到,这是我的建议。

0

重建解决方案,并在IIS上部署服务。它将定义工作

2

Framework 2.0以后的Web服务默认编译为DLL文件,据我所知。通常,当您发布网站和Web服务时,或者当您使用Web应用程序时,会发生这种情况。但是在Web服务中,Visual Studio将输出编译为DLL。因此,你应该编译你的DLL并在IIS上更新。即使您在IIS文件夹上看到CS代码文件,它们仍未被使用。只有asmx文件(不是asmx.cs)用于映射dll中的代码。