通过IIS调试ASP.NET项目
当我们使用Visual Studio调试的时候,通常我们会选择VS自带的ASP.NET Developerment Server(也是默认选项),当第一次调试的时候(按F5或Ctrl+F5不调试直接打开),Developerment Server会自动分配一个未被占用的端口号。
这样做在大多数情况下不会有啥问题,但Developerment
Server毕竟不是IIS,有一些操作无法达到和IIS一样的效果,譬如当我们使用某些方法获取客户端以及服务器IP的时候,使用
Developerment
Server就会出现一些混乱(又如有时候localhost无法匹配正确的域名格式)。这就造成了开发环境和使用环境不一致的情况。在这样种情况下,我们就需要使用IIS或者自定义的进程辅助调试,以确保开发环境模拟的真实性。
依靠VS设置,使用IIS替代Developerment Server的方法大致有两种,列举如下:
1、附加进程法。
单击工具栏中的 Debug -> Attach to Process (调试 -> 附加到进程)在Available Processess(可用进程)中,找到IIS的进程w3wp.exe,单击"Attach(附加)"就行了。
2、设置服务器参数法。
打开Web启动项目属性,在左侧打开Web页,在这里可以看到开始项目的行为设置以及“Servers”(服务器)这个选项。在“Servers”中,有
一个"User Custom Web
Server"(使用自定义Web服务器)的选项,选中它,并且在下面的URL中输入IIS中当前项目的URL即可(如
http://127.0.0.1:8080/)。(在Servers中,我们同样可以修改localhost的端口号等等,这是一个很有用的选项。)
对于VS2010SP1及以上版本,在Servers中,同样有一个"Use Local IIS Web server"(使用本地IISWeb服务器)的选项,在该选项下可以通过IIS Express服务器进行程序调试,该服务器继承了VS服务开发器和IIS Web服务器的优点。
使用这个选项需要IIS6.0,如果您只安装了IIS7.0而没有安装IIS6.0兼容服务的话,使用User Custom Web Server是最佳的选择。
以上设置完成之后,保存并启动调试就可以在IIS中调试了。
使用附加进程法调试js时,对于普通页面中的js可以直接在js代码中加断点进行调试。异步加载的页面由于无法找到该页面,所以可以采用在要调用的js函数中加debugger的方式进行调试。
参考文档:
ASP.NET VS2010配合 IIS 进行调试:http://www.zhixing123.cn/net/42267.html
Debug your ASP.NET Application while Hosted on IIS:http://www.codeproject.com/Articles/37182/Debug-your-ASP-NET-Application-while-Hosted-on-IIS
Debug your ASP.NET Application which is hosted on "Remote IIS Server":http://www.codeproject.com/Articles/38132/Remote-IIS-Debugging-Debug-your-ASP-NET-Applicatio
通过IIS调试ASP.NET项目的更多相关文章
- IIS调试ASP.NET Core项目
IIS调试ASP.NET Core项目 新建一个ASP.NET Core Web项目,选择API模板或随便一个模板都行 新建一个名为localhost的发布(没试过远程主机,或许也可以),主要设置如下 ...
- VS2013中使用本地IIS+域名调试ASP.NET项目
VS2013中使用本地IIS+域名调试ASP.NET项目 在有些情况下需要使用本地的IIS作为调试服务器,如支持多域名的网站,这里记录下如何使用. 1.修改本机hosts文件. 路径:C:\Windo ...
- C# -- HttpWebRequest 和 HttpWebResponse 的使用 C#编写扫雷游戏 使用IIS调试ASP.NET网站程序 WCF入门教程 ASP.Net Core开发(踩坑)指南 ASP.Net Core Razor+AdminLTE 小试牛刀 webservice创建、部署和调用 .net接收post请求并把数据转为字典格式
C# -- HttpWebRequest 和 HttpWebResponse 的使用 C# -- HttpWebRequest 和 HttpWebResponse 的使用 结合使用HttpWebReq ...
- 如何利用IIS调试ASP.NET网站程序详解
如何利用IIS调试ASP.NET网站程序详解 更新时间:2019年01月13日 08:44:13 作者:江湖逍遥 我要评论 这篇文章主要给大家介绍了关于如何利用IIS调试ASP.NET网 ...
- 使用IIS调试ASP.NET网站程序
在实际的开发当中,相信很多的开发者在开发调试ASP.NET网站时候都是直接通过Visual Studio工具的编译运行来调试的. 一般情况下,这种调试方式也不会有多少问题,但有时候我们会发现这样的一个 ...
- 远程调试 Asp.Net 项目
项目部署到产品环境后,难免会发生一些故障,有一些可以在本地测试环境中直接重现,而有一些则无法重现.对于可以在本地测试环境中重现的Bug,开发人员往往能够很迅速地进行问题排查.而对于无法重现的Bug,就 ...
- Visual Studio 2015 + IIS Express 10.0 调试 ASP.NET 项目
参考资料: https://msdn.microsoft.com/zh-cn/library/58wxa9w5(v=vs.120).aspx 首先搭建环境, 也就是用 IIS Express 配置一个 ...
- Win10下通过IIS调试ASP程序遇到的问题和解决方案
最近维护了以前别人的写的一个ASP的系统,记录一下调试过程中的问题和解决方案. 环境篇 万维网发布服务(W3SVC)已经停止 问题: 万维网发布服务(W3SVC)已经停止.除非万维网发布服务(W3SV ...
- IIS 之 Asp.Net项目内部运行详解
我们都知道,当用户在浏览器地址栏中输入网址时,该请求会被IIS服务器捕获,如果是请求的是静态页面则由IIS本身处理并直接返回客户端:如果是动态页(*.aspx),通过一系列的前期的处理来到 .NET ...
随机推荐
- css动画之波纹
样式定义: #ContactAbout { height: auto; position: relative; overflow: hidden; } #sectioncontact { displa ...
- C#基础知识系列三(类和结构体、String和StringBuilder、equals和==)
前言 这一节主要来了解一下类和结构体之间的异同点.以及针对String和StringBuilder的用法.equals和==,其实可以看出很多地方都用到了上一节的值类型和引用类型.堆栈和装箱拆箱操作吧 ...
- asp.net mvc 中的部分视图
使用方法:@Html.Action(action, controller)加载局部页面.例如在模板页中使用:@Html.Action("Contact", "Compan ...
- logic标签用法
logic <logic:iterate> <% Dog dog1=new Dog(); dog1.setAge(2); dog1.setName("xiaoming& ...
- Java设计模式-抽象工厂模式(Abstract Factory )
工厂方法模式有一个问题就是,类的创建依赖工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则,所以,从设计角度考虑,有一定的问题,如何解决?就用到抽象工厂模式,创建多个工厂类,这 ...
- 萤火虫算法-python实现
FAIndividual.py import numpy as np import ObjFunction class FAIndividual: ''' individual of firefly ...
- SpringMVC数据库链接池,以及其他相关配置
1.applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans ...
- 【bzoj3150】 cqoi2013—新Nim游戏
www.lydsy.com/JudgeOnline/problem.php?id=3105 (题目链接) 题意 在第一个回合中,第一个游戏者可以直接拿走若干个整堆的火柴.可以一堆都不拿,但不可以全部拿 ...
- 洛谷P1174 打砖块
题目描述 小红很喜欢玩一个叫打砖块的游戏,这个游戏的规则如下: 在刚开始的时候,有n行*m列的砖块,小红有k发子弹.小红每次可以用一发子弹,打碎某一列当前处于这一列最下面的那块砖,并且得到相应的得分. ...
- HDU #3333
Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Descript ...