初始化任务Bootstrapper

初始化任务Bootstrapper每个应用程序都需要在启动的时候做些初始化任务,在退出的时候做些清理工作,这类任务被归为Bootstrapper,在codeplex上的开源项目,详见http://bootstrapper.codeplex.com/帮助我们来完成以下的任务。1、在需要的时候,我们可以把实现和接口进行分离,实现使用依赖注入(不一定要项目引用,只需要文件夹下有实现的DLL…

大家好,又见面了,我是你们的朋友全栈君。

每个应用程序都需要在启动的时候做些初始化任务,在退出的时候做些清理工作,这类任务被归为Bootstrapper,在codeplex上的开源项目,详见 http://bootstrapper.codeplex.com/帮助我们来完成以下的任务。

1、在需要的时候,我们可以把实现和接口进行分离,实现使用依赖注入(不一定要项目引用,只需要文件夹下有实现的DLL)。那么,我们就需要在网站应用程序或是其它应用程序启动的时候,把这些实现注入进来。这里需要提一点的是,正因为我们把实现和接口进行分离,使得我们可以让两个组件进行相互的引用,比如配置服务的实现可以调用信息中心的接口来记录日志,而信息中心的实现可以调用配置服务的接口来存储配置。

2、然后,我们需要针对每一个组件进行一些初始化工作,比如进行数据初始化,这步工作需要在1之后。

当然,还可以有3、4、5,这些工作我们称为BootstrapperTask,在应用程序启动的时候,只要程序集中有BootstrapperTask,Bootstrapper就会自动找到这些Task并且按照Order分组并行调用,在应用程序结束的时候,Bootstrapper也会依次调用所有的Dispose来清理。

通过 Bootstrapper 将不同的初始化代码组织成不同的任务(实现IStartupTask接口),然后通过Bootstrap.Bootstrapper的Fluent API调用这些任务,并且可以指定任务的执行顺序。



Download?ProjectName=bootstrapper&Downlo

本文来自云栖社区合作伙伴“doNET跨平台”,了解相关信息可以关注“opendotnet”微信公众号

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/162174.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • pycharm怎么打包成exe文件_pycharm怎么保存py文件

    pycharm怎么打包成exe文件_pycharm怎么保存py文件使用Pycharm将多个py文件打包成一个可运行并且可安装文件第一步:安装pyinstaller第二步:打包生成exe文件第三步:造成一个类似安装程序的东西第一步:安装pyinstaller先打开命令行,打开pycharm在左下角:打包程序前提要安装pyinstaller:(如果本文档下面要使用那些命令使用不了的话建议卸载pyinstaller再返回这一步使用命令行再装一次)第二步:…

  • Windows操作系统双因素身份认证解决方案

    Windows操作系统双因素身份认证解决方案Windows桌面帮助企业将办公桌面快速、集中部署在平台上,方便进行管理维护且节省企业成本,能让员工随时随地登录到自己的windows桌面环境中,实现移动办公。安全事件频发的现在,在单一的静态密码登录验证机制下,非法入侵者若窃听到桌面登录账号的用户名及密码,即可通过合法访问权限访问内部系统,企业信息安全面临挑战;企业为防止账号信息泄露,通常强制要求员工定期更换登录密码,给员工及IT运维人员带来许多不必要的麻烦;其次没有及时收回的账号,离职员工仍然有桌面的合法访问权限,因此额外增加了IT部门的账号回收管理

    2022年10月28日
  • Field XXX in XXXX required a bean of type XXXX that could not be found

    Field XXX in XXXX required a bean of type XXXX that could not be found

  • 金士顿16g u盘量产[通俗易懂]

    金士顿16g u盘量产[通俗易懂]1.首先用最新版本chipgenius查看芯片,如果老版本是识别不出来的。2.点击MPALL_F1_9000_v329_0B3.点击update出现芯片4.点击loadlastsetting。5.打开autodetect选项,mode为21,cdromsize为MB不填写自动分区,最后选择ISO文件本人是选…

  • js判断是否包含指定字符串_js字符串包含字符串

    js判断是否包含指定字符串_js字符串包含字符串我是想在js中判断字符串是否包含某个中文,将方法记录起来,这些方法也适用于数字、字母。实践是检验真理的唯一标准,还是要多多测试啊。String对象的方法方法一:indexOf()vargroupName=”小白A组”;alert(‘groupName.indexOf()=’+(groupName.indexOf(“组”)!=-1));//trueindex…

  • 观察者模式是非常常用的设计模式_实现一个观察者模式

    观察者模式是非常常用的设计模式_实现一个观察者模式好久没有写博客啦,之前看完了《设计模式之禅》也没有总结一下,现在回忆一下设计模式之观察者模式。1.什么是观察者模式简单情形:有A、B、C、D等四个独立的对象,其中B、C、D这三个对象想在A对象发生改

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号