详细文档看:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/emab-rm.asp
说明几点:
文件夹:Microsoft.ApplicationBlocks.ExceptionManagement
为异常主类文件.
Microsoft.ApplicationBlocks.ExceptionManagement.Interfaces
为异常接口类文件,
安装
1.使用installutil安装DLL文件,
安装方法,
Visual Studio .NET 2003 命令提示+installutil Microsoft.ApplicationBlocks.ExceptionManagement.dll所有路径
如:installutil E:\exception\Microsoft.ApplicationBlocks.ExceptionManagement\bin\Debug\Microsoft.ApplicationBlocks.ExceptionManagement.dll
程序使用:
添加对Microsoft.ApplicationBlocks.ExceptionManagement.dll引用,
在配制文件添加配制

使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常 <configSections>
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常            
<section name="exceptionManagement" type="Microsoft.ApplicationBlocks.ExceptionManagement.ExceptionManagerSectionHandler,Microsoft.ApplicationBlocks.ExceptionManagement" />
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常        
</configSections>
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常        
<exceptionManagement mode="on">    
                <!--使用自定义数据记录使用下面配制-->
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常            <!--
<publisher mode="on" 
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                assembly
="Microsoft.ApplicationBlocks.ExceptionManagement"  
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                type
="Edobnet.FrameWork.ExceptionHandler.ExceptionDBPublisher"
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                connString
="USER ID=sa;PASSWORD=232323;INITIAL CATALOG=Errors;DATA SOURCE=localhost" />-->
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常         <!--使用自定义数据记录使用下面配制-->   
            <!--<publisher mode="on" 
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                    assembly
="Microsoft.ApplicationBlocks.ExceptionManagement"  
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                    type
="Edobnet.FrameWork.ExceptionHandler.ExceptionLogPublisher" 
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                    fileName
="philips.log"
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                    filePath
="C:"
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                    stackTrace 
= "true"
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                    daily
="true" />
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常                    -->
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常        
</exceptionManagement>

添加USING
using Microsoft.ApplicationBlocks.ExceptionManagement;

测试代码:

使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常try
            }

如果不使用自己定议异常处理,只会在WINDOWS事件里记录,

自定义异常处理:

使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
using System;
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
using System.IO;
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
using System.Text;
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
using System.Data;
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
using System.Data.SqlClient;
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
using System.Collections;
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
using System.Collections.Specialized;
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
using Microsoft.ApplicationBlocks.ExceptionManagement;
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
namespace Edobnet.FrameWork.ExceptionHandler

数据库异常的数据表如下:

使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[ErrorLog]'and OBJECTPROPERTY(id, N'IsUserTable'= 1)
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
drop table [dbo].[ErrorLog]
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
GO
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
CREATE TABLE [dbo].[ErrorLog] (
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常    
[ID] [numeric](180IDENTITY (11NOT NULL ,
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常    
[Info] [varchar] (500NOT NULL ,
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常    
[Message] [varchar] (500)  NULL ,
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常    
[Source] [varchar] (255)  NULL ,
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常    
[StackTrace] [varchar] (1000)  NULL ,
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常    
[EntryDateTime] [datetime] NOT NULL 
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
ON [PRIMARY]
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
GO
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[spLogError]'and OBJECTPROPERTY(id, N'IsProcedure'= 1)
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
drop procedure [dbo].[spLogError]
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
GO
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
SET QUOTED_IDENTIFIER OFF 
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
GO
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
SET ANSI_NULLS OFF 
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
GO
使用Microsoft.ApplicationBlocks.ExceptionManagement处理程序异常
GO


设定相应的异常通过CONFIG文件来设置,我在接面有相应的例子.

相关文章:

  • 2021-05-20
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-09
  • 2021-05-22
猜你喜欢
  • 2021-11-10
  • 2022-12-23
  • 2021-09-11
  • 2021-07-04
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案