ASP.NET入门 - 错误和异常处理

当发生错误时,应该向用户提供一个友好的界面,可以屏蔽详细技术信息,也有助提升用户体验,这时就用到了异常处理。

  • 错误类型:

    1. 语法错误;因缺少关键字,符号,或其他不正确代码所产生的错误,无法通过编译。
    2. 逻辑错误;貌似没问题,但产生意外的结果。
    3. 运行时错误;导致应用程序在运行时崩溃,或有其他意外行为的错误。
  • 错误页面
    1. 在异常发生时,显示给用户的页面,可以将不同类型的错误,映射到不同页面。
  • 局部异常处理:

try catch 一般将有可能出现的异常代码包装在try语句块中,当发生异常时catch会捕捉异常对象,在异常发生之前,处理异常,这样可以更好的控制代码的运行。

  • 全局异常处理和自定义错误页面:

可以在<customError>节点下添加多个<error>元素,其中每个元素代表一个不同的状态码。

在web.config文件的customError元素中定义想要显示的错误页。

<customError mode="On" defaultRedirect="~/Errors/Error500.aspx">
     <error statusCode="404" redirect="~/Errors/Error404.aspx" />
     <error statusCode="500" redirect="~/Errors/Error500.aspx" />
</customError>

    mode属性决定了站点的访问者是否可看到详细的错误页面

    1. On : 站点的错误者总是看到自定义的错误页面
    2. Off : 不显示自定义的错误页面
    3. RemoteOnly : 仅把完整的错误信息显示在本地用户(运行站点的计算机),用户只看到自定义的错误页面

调试,是一个查找并修改代码中bug的过程。可以在代码运行过程中移动,检查变量和对象,甚至动态执行方法和新代码,此时需要一个断点。

跟踪,在运行时最有效地找到代码的执行路径。

当代码在某个断点处停止,可使用快捷键来决定接下来的操作。

快捷键 说明
F5 启用调试,在调试时按下F5将会命中下一个断点。
F11 执行当前行并单步进入被调用的方法
F10 执行当前行,而不单步进行被调用的代码,除非包含断点
Shift+F5 停止调试。
Shift+F11 执行当前代码块中的代码,并返回最初调用它的代码
Ctrl+Shirt+F5 重启调试过程

  这是初学ASP.NET时,做的笔记。现在翻出来觉得自己那时候傻傻的,有一腔热血。正课也不上就窝宿舍看书,比砖头厚的红皮书啃完了一本又一本。那一天是2012-12-10。

时间: 2024-10-12 09:30:42

ASP.NET入门 - 错误和异常处理的相关文章

PHP的错误和异常处理

PHP的错误和异常处理 任何程序员在开发时都可能遇到过一些失误,或其他原因造成错误的发生.当然,用户如果不愿意或不遵循应用程序的约束,也会在使用时引起一些错误发生.PHP程序的错误发生一般归属于下列三个领域. Ø  语法错误 语法错误最常见,并且最容易修复.例如,遗漏了一个分号,就会显示错误信息.这类错误会阻止脚本执行.通常发生在程序开发时,可以通过错误报告进行修复,再重新运行. Ø  运行时错误 这种错误一般不会阻止PHP脚本的运行,但是会阻止脚本做希望它所做的任何事情.例如,在调用heade

【Go语言】错误与异常处理机制

①error接口 Go语言中的error类型实际上是抽象了Error()方法的error接口 type error interface { Error() string } Go语言使用该接口进行标准的错误处理. 对于大多数函数,如果要返回错误,大致上都可以定义为如下模式,将error作为多种返回值中的最后一个,但这并非是强制要求: func Foo(param int)(n int, err error) { // ... } 调用时的代码建议按如下方式处理错误情况: n, err := Fo

asp.net记录错误信息的一般处理方法

在本文中,我们将通过一个简单的处理来记录在我们的网站中的错误和异常.我们这样操作,每当遇到程序错误时,将使用者导航到一个单独的页面,同时错误将被记录到服务器上的一个文本文件,每当错误发生时,我们将以日志的形式每天记录. 首先,我先写一个静态方法用于将错误信息记录到文本文件,这里是将错误信息记录到服务器上的Error文件夹下,代码如下: using System.Globalization; /// <summary> /// 用于将错误信息输出到txt文件 /// </summary&g

翻译:ASP.NETMVC自定义错误页面真的简单吗?

如果你在设置asp.net mvc自定义错误页面时遇到问题,这并不止你一个人.惊讶之余你的做法是正确的,没有起到作用的原因是其一部分错误是由asp.net管道处理的,另一部分是由iis直接处理. 通常情况 (我期望是这种情况,在一些其他框架/服务器上) 我们只需要在一个地方配置自定义错误页就可以了,无论怎么哪儿引发的错误.就像这样︰ <customErrors mode="On"> <error code="404" path="404.

再谈PHP错误与异常处理

博客好久没有更新了,实在惭愧,最近在忙人生大事,哈哈!这段时间没有看什么新的东西,结合项目中遇到的PHP异常处理问题,我又重新梳理了之前模糊的概念,希望对大家理解PHP异常处理有所帮助. 请一定要注意,没有特殊说明:本例 PHP Version < 7 说起PHP异常处理,大家首先会想到try-catch,那好,我们先看一段程序吧:有一个test.php文件,有一段简单的PHP程序,内容如下,然后命令行执行:php test.php 1 <?php 2 $num = 0; 3 try { 4

PHP常用功能块_错误和异常处理 — php(32)

一.错误和异常处理 1.1 错误类型和基本的调试方法PHP程序的错误发生一般归属于下列三个领域: 语法错误:语法错误最常见,并且也容易修复.如:代码中遗漏一个分号.这类错误会阻止脚本的执行. 运行时错误:这种错误一般不会阻止PHP脚本的执行,但会阻止当前要做的事情.输出一条错误,但php脚本继续执行 逻辑错误:这种错误最麻烦,既不阻止脚本执行,也不输出错误消息.一个异常则是在一个程序执行过程中出现的一个例外,或是一个事件,它中断了正常指令的运行,跳转到其他程序模块继续执行. PHP的错误报告级别

[Asp.net入门07】第一个ASP.NET 应用程序-创建数据模型和存储库

1.理解概念 先理解一下两个概念. 模型 模型是指数据的结构类型,以及可调用的方法.对面向对象编程方法来说,其实就是类.模型类就是一个描述数据的类.只有把数据按一定方式描述出来,我们才能在程序中方便地使用它. 存储库 直白解释就是存储数据的仓库.通常就是用数据库来存储数据,当然也有文件存储等其他存储方式.存储库的作用很显然是将数据永久保存起来. 2.创建数据模型 我们在[Asp.net入门06]第一个ASP.NET 应用程序(4)-案例说明中定义的案例项目比较简单,只需要一个简单的数据模型.下面

ASP: Response 对象 错误 &#39;ASP 0251 : 80004005&#39; 解决办法

Response 对象 错误 'ASP 0251 : 80004005' 超过响应缓冲区限制 这种情况一般是因为需要输出的网页内容太大了,由于asp在输入内容到客户的浏览器上之前,会把需要输出的全部内容先输出到缓存区,这个缓存区一般默认大小为4194304,即4MB. 参见:c:\windows\system32\inetsrv\下的metabase.xml文件里的AspBufferingLimit="4194304" 当需要输出的网页内容超过设置的AspBufferingLimit时

php错误和异常处理笔记

关于php的错误和异常处理的使用最近终于搞清楚了,下面是简要笔记:0.程序处理的原则: 0.首先是中断,即粗暴的停止程序,并且不提供错误信息,在php中就是die()和exit(),只是简单的输出一条消息,比粗暴中断有了一定进步; 1.然后是错误处理,就是在中断基础上增加关于错误的信息,以便调试,就是php中默认的错误处理方式(缺点见下); 2.为了弥补缺点,php允许程序员自定义错误处理函数;1.php自身的错误处理方式对于web用户是不友好的(warning级别的错误不影响后续的程序运行,而