下载中心┊文章中心┊软件分类┊更新软件┊推荐下载┊热门软件┊更新文章┊热门文章
 
《拓文asp.net网站内容管理系统》官方演示站。
 设为首页    
 收藏本站
 作者:黄振安
 
网站首页 开源拓文 .NET编程 网站编程 网页设计 图形图像 数据库 软件工程留言本
    站内搜索:   
您现在的位置: 拓文网络 → 文章中心 → .NET编程 → ASP.NET → ASP.NET 2.0 中 Web 事件(1)[正文]

热 门 文 章

相 关 文 章
  • 使用 Visual Basic 或 Visual ...
  • asp.net 2.0下一个标准GRIDVIE...
  • asp.net 2.0下一个标准GRIDVIE...
  • asp.net 2.0下一个标准GRIDVIE...
  • ASP.NET 2.0页面框架简要慨述(2)
  • ASP.NET 2.0页面框架简要慨述(1)
  • ASP.NET 2.0中的Web和HTML服务...
  • ASP.NET 2.0中的Web和HTML服务...
  • ASP.NET 2.0中的Web和HTML服务...
  • ASP.NET 2.0中的Web和HTML服务...
  • ASP.NET 2.0 中 Web 事件(1)
     
    [作者:不详    转贴自:    点击数:    字体:【大 中 小】    更新时间:2006-10-2 16:18:53]

         ASP.NET 2.0 还提供了全功能的应用程序监视和健康监视。这个系统是由一个完全可扩展事件模型和一个能将事件发送到多种接收器的事件引擎组成的。举例来说,您可以配置您的 ASP.NET 应用程序来每天发送电子邮件,表明服务器正在运行并且包括可用内存的数量。同样,您可以创建一个链接到未处理异常的健康事件。异常内容、请求标题以及时间和日期都可以被发送到一个错误日志记录数据库。
      ASP.NET 2.0 包含了内置的事件,包括心跳、应用程序生存期事件(启动/停止/编译)和错误陷阱事件(未处理异常)。不过,,您可以很容易地在这些基类之上进行构建,以从应用程序重创建并引发您自己的事件。举例来说,您可能创建一个自定义的事件来记录何时第一百个用户单击某一特定的链接。
      
      ASP.NET 2.0 健康监视系统真正强大的功能是,通过 web.config 和 machine.config 文件它是完全可配置的。使用正常的 XML,您能定义事件、定义提供程序(事件接收器),以及将特定的事件发送到特定的提供程序。
      
      创建事件
      事件在结构上与异常是类似的。也就是说,除了作为一个消息容器,event 类本身几乎没有功能。在健康监视方面,所有事件都从 Sytstem.Web.Management.WebBaseEvent 继承。不过,您也可以从用于专用目的(如收集 HTTP 请求数据或处理异常)的高级基类派生。
      
      列表 4. 自定义事件
      
      using System;
      using System.Web.Management;
      
      public class CustomEvent : WebBaseEvent
      {
       public const int EventCode = WebEventCodes.WebExtendedBase + 10;
       public MyEvent(string message, object eventSource)
       : base(message, eventSource, EventCode)
       { }
      }
      
      创建自定义事件的最重要部分是提供一个唯一的 EventCode。所有内置事件代码都在 WebEventCodes 枚举中。自定义事件应该有从 WebEventCodes.WebExtendedBase + 1 开始的数字。除此之外创建自定义事件中的唯一常见任务是正确地初始化事件。
      
      使用事件
      虽然内置事件自动激发,但您还是可以将代码添加到应用程序以在任何时候启动自定义事件。
      
      列表 5. 引发一个事件
      
      <script runat="server">
       void Page_Load(Object sender, EventArgs e)
       { // Raise a custom event MyEvent myEvent =
       new MyEvent("loading webevent sample page", this); myEvent.Raise(); }
      </script>
      
      当您从 ASP.NET 页面引发一个事件时,您只是创建该事件的一个新实例然后执行 Raise() 方法。Raise() 方法将事件实例自动传递到健康监视引擎。然后此引擎将该事件映射到配置文件和提供程序,并将该事件移交给正确的提供程序。提供程序最终将事件传递到正确的接收器。
      
      配置健康监视
      健康监视是在 machine.Config 或 Web.Config 文件中的新的 区域配置的。您可以配置 部分来设置一个周期性报告应用程序状态的 Web 检测信号。您也可以配置应用程序来生成事件,并将该事件通过各种提供程序传递。
      
      配置事件
      必须在事件映射区域标识每个事件。事件通过唯一名称和完整类型被标识。事件名称在规则区域是作为链接来使用的。
      
      列表 6. 事件映射区域
      
      <!-- Event mappings define the events that are monitored -->
      <eventMappings>
       <add name="SampleWebRequests"
       type="Samples.ASPNet.SampleWebRequestEvent, SampleWebRequestEvent,
       Version=0.0.0.0, Culture=neutral, PublicKeyToken=f0c63b9a560d5e5a"/>
      
      
      
        做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。


    页次:1/1  1篇/页  首页   上一页   下一页   尾页  合计 1 篇 Go:
     
    上一篇:ASP.NET 2.0 中 Web 事件 (2)
    下一篇:ASP.NET 2.0 中好东西(theme)介绍
    winner 打印本页 关闭窗口

         文 章 评 论
    评论人 查看该文章的评论 发表时间
       笔 名* : 0 50分 60分 70分 80分 90分 100分
    评论内容 *: (最多600字。当前字数:0)


    没有相关评论,欢迎您参与!

    - 关于本站 - 网站帮助 - 下载声明 - 友情连接 - 网站地图 -
    Copyright © 2005-2006 rtht.Com. All Rights Reserved . [桂ICP备06004496号]程序设计: 拓文ASP.NET网站内容管理系统 V2.6 SQL版