IIS.net 上有一篇题为“将 Visual Studio 2008 与 IIS 7.0 一起使用”的帖子,但我不太相信人们会这样做。(在其他宝石中,它建议在每次更改后发布您的 Web 应用程序。)
如果您在 IIS7 而不是 Cassini 中调试 ASP.NET 应用程序,我很想听听您的方法、提示和技巧。
编辑:我特指本地调试。
IIS.net 上有一篇题为“将 Visual Studio 2008 与 IIS 7.0 一起使用”的帖子,但我不太相信人们会这样做。(在其他宝石中,它建议在每次更改后发布您的 Web 应用程序。)
如果您在 IIS7 而不是 Cassini 中调试 ASP.NET 应用程序,我很想听听您的方法、提示和技巧。
编辑:我特指本地调试。
我相信我已将您指向该指南,但是当我仔细查看它时,我认为这比我所做的要复杂一些。我做了以下事情:
在 IIS 中为您的项目创建一个网站。
例如,向该站点添加自定义主机标头http://mysite:*/ or http://mysite:80/
打开hosts
位于C:\Windows\system32\drivers\etc
记事本中的文件(如果您使用的是 Vista,则以管理员身份运行)并添加以下行:
mysite 127.0.0.1
如果您在 IIS 中的网站上有多个主机头,则需要在hosts
文件中表示每个主机头。
现在,当您F5
在 Visual Studio 中按下时,该站点将使用 url 打开,http://mysite
您将能够像往常一样调试、设置断点等,除非没有与 Cassini 相关的问题... ;)
编辑:为了澄清起见,我只想指出,据我所知,我从来不需要将任何进程附加到 VS。至少我不必每次都这样做。
我只是将 Visual Studio 附加到 IIS 工作进程,如果您有多个应用程序池,那么您可以运行“issapp”来获取适当的 PID。
我从不通过单击“开始调试”进行调试。
如果您已经安装了 msvcmon,这对于在远程服务器上工作也有一个很好的优势。
好吧,设置 IIS 7 进行调试并不是很棘手,但我更喜欢做的是节省时间(如果我对从冷启动调试不感兴趣)是在 Web 浏览器中启动 Web 应用程序/网站首先 - 让 ASP.net 预编译等。
然后我将使用 Visual Studio 附加到 IIS 进程。连接后,我可以设置断点和调试,我发现这是一种更快的方法。
我以管理员身份启动 Visual Studio,然后调试 > 附加到进程 > w3wp.exe。