如何在web应用程序中调试Initialize()
本文关键字:调试 Initialize 应用程序 web | 更新日期: 2023-09-27 18:17:37
我正在尝试创建一个方法,在应用程序初始化时调用,除了创建web应用程序时,您只能通过将其附加到IIS进程(w3wp.exe)来调试它。
问题是这个进程只在初始化应用程序之后创建,这使得在调用该方法之前不可能将Visual studio调试器附加到它。
有人有解决方案吗??
您可以使用Visual Studio包含的Cassini web服务器。在项目的Web设置中,您应该选择User Visual Studio Development Server。这将允许你通过按F5来调试你的应用程序。
如果你真的需要在IIS中调试,你可以通过调用Debugger.Break
在Initialize
方法中强制调试器中断。如果您安装了调试器,您将获得附加调试器的选项。
如果你有一个非常笨拙的应用程序,很难调试(除了重构成更易于管理和测试的部分),你可以用日志记录来检测你的代码。这将允许你在生产环境中排除应用程序的故障。net内置了对日志的支持,也有一些很好的开源框架可供你使用。
设置你的项目使用IIS而不是ASP开发服务器,并创建一个默认的web虚拟目录,指向你的UI开发目录。这很容易在Visual Studio的项目属性中完成。
以调试形式构建,然后您可以从IIS或通过键入项目的web目录来浏览web。
你需要在IIS中注册ASP:
在命令窗口中,导航到"C:'Windows'microsoft.net'framework'v2.0.50727",其中C是您的启动驱动器。
然后运行"ASPNET_REGIIS -i"将此注册为ASP。. NET使用IIS
,然后是"ASPNET_REGIIS -ga asp.net ",这将授予IIS访问ASP的权限。净