概述ASP.NET错误处理
本文介绍ASP.NET错误处理,以及介绍如果您的应用程序试图登录数据库时没有成功,则显示的错误信息不应该包括它正在使用的用户名。
要创建页中的全局处理程序,请创建 Page_Error 事件的处理程序。要创建ASP.NET应用程序范围的错误处理程序,请在 Global.asax 文件中将代码添加到 Application_Error 方法。只要您的页或应用程序中发生未处理的异常,就会调用这些方法。您可以从 HttpServerUtility.GetLastError 方法获取有关最新错误的信息。
注意 如果您具有全局错误处理程序,则它优先于在 Web.config customErrors 元素的 defaultRedirect 属性中指定的ASP.NET错误处理。
原则(MSDN):在您的应用程序显示错误信息时,它不应该泄露有助于恶意用户攻击您系统的信息。例如,如果您的应用程序试图登录数据库时没有成功,则显示的错误信息不应该包括它正在使用的用户名。
有许多方法可以控制错误信息:
将应用程序配置为不向远程(应用程序)用户显示详细错误信息。您也可以选择将错误重定向到应用程序页。
只要可行就包括ASP.NET错误处理,并编写您自己的错误信息。在您的错误处理程序中,您可以进行测试以确定用户是否为本地用户并作出相应的响应。
在捕捉所有未处理异常并将它们发送到一般错误页的页级别或应用程序级别上,创建全局错误处理程序。这样,即使您没有预料到某个问题,至少用户不会看到异常页。
一.页面级的ASP.NET错误处理
1. voidPage_Error(Objectsender,EventArgse){
2. Stringmessage="<fontface=verdanacolor=red>"
3. +"<h4>"+Request.Url.ToString()+"</h4>"
4. +"<pre><fontcolorfontcolor='red'>"+Server.GetLastError().ToString()+"</pre>"
5. +"</font>";
6.
7. Response.Write(message);
8.  
相关文档:
看到有人提问一个空间支持多个网站的问题。
总结一下:
最好保证各个项目app_code内的文件都是一样的。
因为生成多个项目必定生成多个App_Code.dll,
由于所有dll放在同一个bin目录,所以要保证app_code内的文件一样。
发布前所有项目aspx文件的 Inherits="menulefttb" 中的名字不能相同。
将每个项目发布后生成的dll ......
One of my bank customers planned to roll out a new ASP.NET web application serving as their critical internet banking portal. They faced some weird performance issue in their UAT environment. They noticed the CPU utilization was really high (above 90%) without any fluctuation. After checking ......
//TransmitFile实现下载
protected void Button1_Click(object sender, EventArgs e)
{
/*
微软为Response对象提供了一个新的方法TransmitFile来解决使用Respo ......
一。①:首先要有这个文件URLRewriter.dll,如果没有,赶快到网上下载一个,并将其放到下面的bin目录里面,并且将其引用添加到下面里面;
②:下面就是Web.Config文件的配置了,当然,配置过程相当简单:
1:先添加这个
<configSections>
<section name="RewriterConfig" type="URLRewriter.Config.Rew ......
在使用asp.net编写webservice时,默认情况下是不支持session的,但我们可以把WebMethod的EnableSession选项设为true来显式的打开它,请看以下例子:
1 新建网站WebSite
2 新建web服务WebService.asmx,它具有以下两个方法:
[WebMethod(EnableSession = true)]
public string Login(string name)
{
  ......