zoukankan      html  css  js  c++  java
  • 第十六讲 调试和跟踪ASP.NET应用程序

    *摘要
    。ASP.NET运行故障
    。调试
    。跟踪

    *ASP.NET故障排除
    不能显示页面:HTTP错误403
    。可能是用户没有权限来执行包含在ASP.NET中的代码。
    。解决方法:需要修改IIS的相关设置。

    找不到页面:HTTP错误404
    。可能是在浏览器中输入了拼写错误的URL。
    。解决法:输入正确的URL。
    提示:
    。也有可能是文件后缀名错误,如用NotePad写的代码,错误保存为*.aspx.txt

    脱机时Web页面无效
    。可能是用户试图请求一个页面,但当前没有与Internet的连接。
    。解决方法:单击“连接”按钮;或者调整浏览器的“脱机”设置。

    得到服务器错误的错误语句
    。可能是ASP.NET代码错误。
    。解决方法:修改错误代码。

    Web访问失败
    。IE选项中,选择代理时,没有把“对于本地地址不使用代理服务器”选中

    ASP.NET故障排除
    其他问题:
    。可能是IIS安装不正确。
    杀手锏:ASPNET_regiis -i

    *需要进行ASP.NET应用程序调试的操作系统
    。本地:
    -Microsoft Windows@2000 Professional
    -Windows 2000 Server
    -Windows 2000 Advanced Server
    -Windows XP Professional
    -Windows Server 2003
    。行程Server:
    -Windows 2000 Professional
    -Windows 2000 Server
    -Windows 2000 Advanced Server
    -Windows XP Professional
    -Windows Server 2003
    。行程Client:
    -Windows 2000(any edition)
    -Windows XP(any edition)

    2.1启动调试模式
    。应用程序级调试模式
    -Web.config
    -<compliation debug="true" />
    。页面调试模式
    -HTML页面中添加以下代码:
    <%@ Page Language="C#" Debug="true" %>
    -VS.NET中Document的Debug属性设置为true

    2.2VS.NET中的调试
    。“调试”菜单
    -启动(F5)
    -逐语句(F11)
    -逐过程(F10)
    -新断点(Ctrl+B)
    。调试窗口
    -断点
    -变量

    2.3 CLR调试器的使用
    。.NET框架自己带的调试器
    。DbgCLR.exe
    。位于:PRogram files\Mirosoft Visual Studio.NET\FrameWorkSDK\GuiDebug

    CLR调试器使用的4个步骤
    。打开要调试的文件
    。将调试器附加到ASP.NET进程中
    。设置断点
    。使用调试器工具来操纵应用程序

    *在远程计算机上调试ASP.NET Web应用程序
    。调试器在远程使用方法与在本地使用相同
    。远程调试的必需条件:
    -必需安装Visual Sudio remote debugging组件
    -用户必需是Debugger User组或Administrator
    -必需具有运行ASP.NET计算机的管理员权限
    -User DCOM(not TCP/IP) for c/c++

    2.4 ASP.NET调试启动故障
    无法在Web服务器中启调试
    。末将IIS应用程序配置为使用“集成 Windows身份验证”。确保已选中“身份验证方法”对话框中的“集成Windows身份验证复选框”
    。检查IIS的“保持HTTP连接”选项。如果它是关闭的,则可能需要将其打开,再尝试调试。

    您没有调试服务器的权限。
    。原因1:确保已启用Integrated Windows Authentication可能的原因是仅为IIS的Directory安全启用了Basic authentication
    。原因2:如果您在使用Integrated Windows Authentication,则需要确保您的用户账户能够完全控件IIS的目录中。

    发送调试HTTP请求时发生服务端错误
    。Web应用程序没有应用程序名。为此,请使用IIS MMC 来检查Web项目的属性,确保Web项目具有应用程序名。
    。如果使用的是NTFS文件格式,则确保"ASPNET"具有"wwwroot"或虚拟目录文件夹上的适当权限,才能访问和写入这些文件夹。
    。没有对项目进行配置以接受调试。
    -原因:在项目属性中末启用ASP.NET调试
    。末正确安装调试器
    -末正确安装.NET Framework应用程序。
    。服务器不支持对ASP.NET或ATL服务器应用程序的调试。
    -IIS和VS.NET安装顺序有错,用ASPNET_Regiis重新注册。

    访问被拒绝。
    。检验您是否是管理员或某个组成员。您可能不是该计算机上Debugger Users组的成员。将您的用户账户添加到计算机上的Debugger

    Users组中即可解决此错误。
    。您可能是Debugger Users组的成员,但是您不具有调试ASPNET辅助进程的权限,因为您不是ASPNET用户账户或Administrator组的成员

    。将您的用户账户添加到机器上的Administrator组即可解决此问题。

    无法启动ASP.NET或ATL服务器调试。
    。原因1:您可能安装了IIS Locakdown工具。如果这样,则查找urlscan.ini文件,并将DEBUG(区分大小写)添加到[allowverbs]部分中。
    。原因2:如果将域控件器用作服务器,并且项目是使用机器名(非完整域名)创建的,则可能需要将项目的URL更改为完整域名。
    。原因3:如果将IIS设置为使用专用IP(例如Web site identification,可以在IIS MMC的IIS 设置中找到这一选项),则可能看到这条

    错误消息。
    。原因4:Web.config文件的中的值太大。默认单位是千字节而非字节,因此如果更改此数字,使用了错误的单位,则可能导致调试总是

    3、跟踪
    。在页面级使用跟踪
    。写到跟踪日志、
    。应用程序级跟踪

    *试用Response跟踪
    。新建Web应用程序
    。添加用户名称,密码文本框,登录按钮
    。为登录按钮添加事件。
    。在事件中用Response.Write来跟踪值是否正确


    *跟踪
    。便利的来展示应用程序ASP.NET Web 的信息
    。两种方式跟踪:
    -Page-level跟踪
    。在浏览器中输出
    。不影响页面性能
    -Application-level跟踪
    。许可一次察看多个请求
    。自动为程序中的所有页开启page-level

    2.1在页面级使用跟踪
    。在HTML页添加以下代码
    <%@ Page Trace="true" %>
    。VS.NET中的设置
    -Document的Trace属性设置为true

    *跟踪输出
    。请求内容:包含关于页面请求的信息
    。跟踪信息:显示实际的跟踪信息
    。控制树:显示页面使用的不同控件
    。Cookies集合:显示页面中的所有Cookie
    。标题集合:显示客户端传送到服务器端的连同请求的各种HTTP标题
    。服务器变量:显示服务器变量集合的所有成员。

    2.2写到跟踪日志
    。Trace.Write;
    。Trace.Warn:红色显示
    注:
    。Trace对象对应的类为TraceContext
    。Trace.IsEnabled属性可以得到跟踪的当肖状态

    Application-level跟踪日志
    。为所有页开启page-level跟踪
    。收集统计状态信息及控件层次
    。开启跟踪需按以下方试修改web.config文件:
    <configuration>
     <system.web>
      <trace enabled="true" />
     </system.web>
    </configuration>

    *支持的属性
    value:Description
    enabled:设置true|false,用于标记跟踪是否开启(默认为关闭)
    pageOutput:设置true|false,用于标记跟踪信息是否在页面被显示,包括在每个页面直接输出,或是通过trace.axd文件输出。(默认

    为关闭)
    requestLimit:跟请求在服务器端的存储数量(defalut is 10)
    traceMode:设置SortByTime|SortByCategory,指示显示排序方式(default is SortByTime)
    localOnly:设置true|false,指示跟踪是否仅对本地用户或所有用户(defalut is true)

     

  • 相关阅读:
    [bzoj1089] 严格n元树
    [bzoj1097] 旅游景点atr
    [hdu3887] Counting Offspring
    [POJ3321] Apple Tree
    [POJ3635] Full Tank?
    git
    【MySQL】数据的导出导入
    Ubuntu python 开发环境配置
    测试markdown
    约瑟夫环问题-java实现
  • 原文地址:https://www.cnblogs.com/iceberg2008/p/1422068.html
Copyright © 2011-2022 走看看