一、PreApplicationStartMethodAttribute 类简介

应用程序启动时提供的扩展的支持。

命名空间:   System.Web
程序集:  System.Web(位于 System.Web.dll)

 
    //
// 摘要:
// 提供对应用程序启动的扩展支持。
[AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)]
public sealed class PreApplicationStartMethodAttribute : Attribute
{
public PreApplicationStartMethodAttribute(Type type, string methodName); //
// 摘要:
// 获取关联启动方法所返回的类型。
//
// 返回结果:
// 一个描述启动方法的类型的对象。
public Type Type { get; }
//
// 摘要:
// 获取关联的启动方法。
//
// 返回结果:
// 一个字符串,其中包含关联启动方法的名称。
public string MethodName { get; }
}
  • 没有程序集定义应用程序启动方法调用的顺序能保证。 因此,每个已注册的 start 方法应编码孤立地运行的不应依赖于副作用的其他注册的开始方法。

 使用方法,在程序集加载文件AssemblyInfo.cs中注册使用
//定义程序启动时处理方法
[assembly: PreApplicationStartMethod(typeof(TestOne), "Start")]

二、使用示例:

注:注册方法必须是公共的静态的

定义如下:

    public class TestOne
{
/// <summary>
/// 程序启动时,PreApplicationStartMethod中指定的方法必须是公共静态的
/// </summary>
public static void Start()
{
LogHelper.LogHelper _log = new LogHelper.LogHelper();
_log.WriteLine("程序启动成功1");
}
}
三、转载

1. 作用

指定某个函数在站点的Application_Start之前执行。

2. 用法

[assembly: PreApplicationStartMethod(typeof(SomeClassLib.Initializer), "Initialize")]

一般放在AssemblyInfo.cs。

可以注册多个。

3. 用途

它可以让我们脱离web.config做一些事情,如注册自定义IHttpModule、注册BuildProvider

4. 注意

不能保证调用程序集定义的应用程序启动方法的顺序。 因此,每个注册的开始方法应该将代码编写为分开运行,不应该依赖于其他注册开始方法的副作用。(摘自MSDN)

更多:

PreApplicationStartMethodAttribute程序启动扩展的更多相关文章

  1. ASP.NET Core 中文文档 第三章 原理(1)应用程序启动

    原文:Application Startup 作者:Steve Smith 翻译:刘怡(AlexLEWIS) 校对:谢炀(kiler398).许登洋(Seay) ASP.NET Core 为你的应用程 ...

  2. ASPNET5应用程序启动

    1. 启动类 在asp.net5当中,Startup类提供应用程序的入口,对所有应用程序是必须的.争对特定环境的配置的starup class和方法也是有可能的, 但是,不管怎样, 一个Startup ...

  3. NET CORE 应用程序启动

    原文:Application Startup作者:Steve Smith翻译:刘怡(AlexLEWIS)校对:谢炀(kiler398).许登洋(Seay) ASP.NET Core 为你的应用程序提供 ...

  4. 如何在ASP.NET Core程序启动时运行异步任务(3)

    原文:Running async tasks on app startup in ASP.NET Core (Part 3) 作者:Andrew Lock 译者:Lamond Lu 之前我写了两篇有关 ...

  5. 如何在ASP.NET Core程序启动时运行异步任务(2)

    原文:Running async tasks on app startup in ASP.NET Core (Part 2) 作者:Andrew Lock 译者:Lamond Lu 在我的上一篇博客中 ...

  6. 如何在ASP.NET Core程序启动时运行异步任务(1)

    原文:Running async tasks on app startup in ASP.NET Core (Part 1) 作者:Andrew Lock 译者:Lamond Lu 背景 当我们做项目 ...

  7. 应用程序启动管理 Winform版

    ★前言      开发这个小工具的想法主要是机器中安装了数据库,每次设置开机启动数据库服务的话,则系统启动很慢,每次都得手动到服务管理器中停止服务,很是繁琐,相信不少做开发的朋友会遇到同样的问题,就有 ...

  8. IOS程序启动原理

    1.Info.plist 建立一个工程后,会在Supporting files文件夹下看到一个“工程名-Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除 常见属性(红色 ...

  9. iOS程序启动过程

    First, the function creates the main application object (step 3 in the flowchart). If you specify ni ...

随机推荐

  1. 【PAT】1060 Are They Equal (25)(25 分)

    1060 Are They Equal (25)(25 分) If a machine can save only 3 significant digits, the float numbers 12 ...

  2. 【AtCoder】ARC099题解

    C - Minimization 每次操作必然包含一个1 枚举第一次操作的位置计算两边即可 代码 #include <bits/stdc++.h> #define fi first #de ...

  3. zabbix3.4+grafana5.0.1数据可视化

    转自:https://blog.csdn.net/xiaoying5191/article/details/79530280

  4. select 详解

    In summary, a socket will be identified in a particular set when select returns if: readfds:If liste ...

  5. 搭建LDAP服务器

    1. 使用SSH 登陆服务器. 2. 更新有效的包. sudo apt-get update 3. 安装LDAP和一些其它LDAP相关的工具. sudo apt-get install slapd l ...

  6. 对C转换说明符的误解以及关于数组的一些知识

    事实上,scanf()函数中%c并非是用来输入单个字符的,而是用来输入一组字符的. 例如: ]; scanf("%3c",a); 其中“3”规定了输入数据的宽度,当然宽度为“1”的 ...

  7. 002.iSCSI服务端配置

    一 iSCSI target的磁盘种类 大型文件 单一分区(partition) 磁盘 数组 RAID LVM 二 iSCSI创建步骤 建立用于共享的磁盘设备(分区/磁盘/文件) 创建后备磁盘 创建相 ...

  8. oracle批量插入優化方案

    今天聽DBA説如果從一個表批量查詢出一批數據之後批量插入另外一張表的優化方案: 1)不寫歸檔日誌: 2)採用獨佔 關於insert /*+ append */我們需要注意以下三點: a.非歸檔模式下, ...

  9. 基于图文界面的蓝牙扫描工具btscanner

    基于图文界面的蓝牙扫描工具btscanner   btscanner是Kali Linux内置的一款蓝牙扫描工具.它提供图文界面,更便于渗透测试人员查看扫描信息.该工具会自动使用主机所有的蓝牙接口,并 ...

  10. 【WIN10】WIN2D——圖像處理

    源碼下載:http://yunpan.cn/c3iNuHFFAcr8h  访问密码 8e48 還是先來看下截圖: 實現了幾個效果:放大.縮小.旋轉.左右翻轉.上下翻轉,亮度變化.灰度圖.對比度.高斯模 ...