我开发了一个 WCF Web 服务,其中包含对非托管 DLL 的依赖。当我尝试通过 Visual Studio 2010 的一键式 Web 部署将 Web 应用程序发布到正在运行的服务器(本地或远程)时,现有 bin 文件夹的删除失败,因为该非托管 DLL 仍由 IIS 加载到内存中,导致发布操作失败,除未删除的 DLL 外,Web 应用程序文件夹为空。如果我随后在服务器上手动回收 IIS 的应用程序池或重新启动 IIS,我就能够成功执行发布操作。
有没有办法在 Visual Studio 的发布操作开始时以某种方式自动执行应用程序池回收?服务器名称和 Web 应用程序名称根据不同的 Web 部署配置文件而有所不同,只是为了让事情变得有趣。
也欢迎其他建议。
到目前为止我遇到的一些相关链接:
如何:使用一键发布和 Web 部署部署 Web 应用程序项目
在将 WCF 项目投入使用时是否需要回收应用程序池?