我在本地开发机器上运行.NET 1.1 Web应用程序,并且实时版本在运行.NET 2.0的托管Web服务器上运行(一切运行正常)。
我的实时服务器在我的本地开发机器上有一个项目镜像。当我重新构建项目/解决方案并将新DLL上传到实时服务器时,我所做的更改不会在第一次上传时生效。
我发现我必须
然后重复步骤2,3&再次4,这一次的变化已经生效。
为什么会发生这种情况的任何想法,因为它使我的部署过程比它必须的时间长得多并且非常令人沮丧,有时我甚至不得不这样做三次!
非常感谢帮助。
注意:我在使用Firefox 3.0.9浏览的XP2 Windows机器上运行Studio .NET 2003。
答案 0 :(得分:1)
如果您具有远程桌面功能,则可以尝试步骤1-4并回收应用程序池,看看是否确实解决了问题
答案 1 :(得分:0)
虽然我不明白为什么编译的DLL会被ASP.NET“重新编译”(它应该只是被加载),但这里有一些可以考虑的事项(我会在考虑这个时添加更多):
通过浏览器进行缓存。在Firefox中,如果你有“Webdeveloper插件”,你可以保持关闭缓存。
ASP.NET临时文件文件夹中DLL的卷影副本已损坏。要解决此问题,请参阅my answer to this question。
答案 2 :(得分:0)
检查perfmon计数器是否有重新编译。除非您是NGEN,否则在网站上删除新DLL会导致页面被重新编译。 web.config中有一个设置,用于标记它们是批量编译还是一次编译。在任何一种情况下,删除新的DLL都会触发重新编译页面。
这里有一些不止一次咬我的东西 - 我做了一个改变,放弃它,然后点击了网站。我没有看到我的更改的影响,所以我做了其他事情来“修复它”,然后刷新我的浏览器窗口。现在我看到了变化!这种变化始终存在,正是刷新“导致它”出现。