最近下载了SharpDevelop,感觉各方面都不错,唯一的缺憾是不能调试ASP.NET。经过几番搜索和试验,终于发现了用它调试ASP.NET的方法。
SharpDevelop现在已经支持创建ASP.NET项目,虽然很多文件类型的编辑器还没有,比如JavaScript,CSS等,但是我觉得这些都不是最重要的,最重要的是要能够进行调试,调试才是开发中的重中之重啊。
新建一个ASP.NET项目,如果选中项目直接按调试的话,会弹出一个错误提示,说不能直接对DLL做调试,如下如所示:
怎么办呢?我找到的方法是利用VS2008自带的ASP.NET Development Server,它包含两个文件,WebDev.WebHost.dll 在GAC目录中,WebDev.WebServer.EXE在C:\Program Files\Common Files\Microsoft Shared\DevServer\9.0目录中,利用WebDev.WebServer.exe可以调试ASP.NET程序,VS2008就是用它来进行调试的(使用IIS的项目除外)。
直接运行WebDev.WebServer,可以得到如下的提示,它需要我们提供端口,Web应用的物理路径,以及虚拟路径。
接下来可以对SharpDevelop创建的Web项目做一下配置,使其自动调用WebDev.WebServer,操作步骤如下:
- 右击Web项目,在弹出的菜单中选择属性;
- 选择Debug标签;
- 在Shart Action分组中选择Start external program,在右边的文本框中输入WebDev.WebServer.exe所在的地址;
- 在Start Options分组中,Command line arguments 输入: /port:8888 /vpath:/WebDebug /path:R:\SharpDevelop\WebDebug, Working Directory 输入:R:\SharpDevelop\WebDebug
现在直接按F5调试Web项目,可以在任务栏的右下角看到如下提示,说明WebDev.WebServer已经开始运行了。
在Page_Load函数中加入如下断点:
打开浏览器,输入地址http://localhost:8888/webdebug/ 浏览刚才设置断点的页面,可以看到,断点已经起作用了,如下图:
到此,已经可以正常的使用SharpDevelop做ASP.NET的调试工作了。
需要注意的是:WebDev.WebHost.dll添加到GAC目录中,否则WebDev.WebServer无法正常运行,如果机器上没有安装VS2008的话,则需要把这个dll添加到gac中,如果已经装了VS,则这个dll就已经在GAC中了。
张志敏所有文章遵循创作共用版权协议,要求署名、非商业 、保持一致。在满足创作共用版权协议的基础上可以转载,但请以超链接形式注明出处。
本博客已经迁移到 GitHub , 围观地址: http://beginor.github.io/