我开发了一个WCF Web服务,它包含对非托管DLL的依赖。当我尝试通过Visual Studio 2010的一键式Web部署将Web应用程序发布到正在运行的服务器(本地或远程)时,删除现有的bin文件夹失败,因为IIS仍在内存中加载非托管DLL,导致发布操作失败,使Web应用程序文件夹为空,除了未删除的DLL。如果我然后手动回收服务器上的IIS'应用程序池或重新启动IIS,我就能成功执行发布操作。
有没有办法在Visual Studio的发布操作开始时以某种方式自动化应用程序池回收?服务器名称和Web应用程序名称根据不同的Web Deploy配置文件而有所不同,只是为了让事情变得有趣。
也欢迎其他建议。
到目前为止我遇到的一些相关链接:
How to: Deploy a Web Application Project Using One-Click Publish and Web Deploy
Is it neccassary to recycle the app pool when placing a WCF project to live?