请注意,本站并不支持低于IE8的浏览器,为了获得最佳效果,请下载最新的浏览器,推荐下载 Chrome浏览器
欢迎光临。交流群:166852192

源码之美


内容类型
标签
  • Orchard源码分析(4.4):Orchard.Caching.CacheModule类

    概述CacheModule也是一个Autofac模块。一、CacheModule类CacheModule将DefaultCacheManager注册为ICacheManager:     public class CacheModule : Module {         protected override void Load( ContainerBuilder builder) {      …

  • Orchard源码分析(4.3):Orchard.Events.EventsModule类(Event Bus)

    概述采用Event Bus模式(事件总线),可以使观察者模式中的观察者和被观察者实现解耦。在.Net 中使用观察者模式,可以使用事件(委托)和接口(类)。Orchard Event Bus使用的是接口的形式,这样方便将“观察者”注册到Autofac容器中。EventsModule模块是构成Orchard Event Bus的一部分。这里先分开分析Orchard Event Bus涉及的类型和知识点 …

  • Orchard源码分析(5):Host相关(Orchard.Environment.DefaultOrchardHost类)

    概述回顾一下之前对Orchard.Web.MvcApplication类的分析。在Orchard启动时,会创建一个DefaultOrchardHost对象:DefaultOrchardHost对象是应用程序域级的单例,可以简单地理解为它代表Orchard应用程序。它主要作用是进行初始化Orchard、处理BeginRequest和EndRequest事件,以及另外的这里暂不关注操作。 …

  • Orchard源码分析(5.1):Host初始化(IOrchardHost.Initialize方法)

    概述Orchard作为一个可扩展的CMS系统,需要在初始化或运行时加载一些模块(Modules)或主题(Themes),这些模块或主题统称扩展(Extensions)。在初始化过程中会对扩展进行设置:DefaultOrchardHost.SetupExtensions方法。当添加新的扩展、删除扩展、修改扩展源码后,需要通知扩展加载器(Extension Loader)重新加载或完成一些清理工作,所 …

  • Orchard源码分析(5.2):BeginRequest事件处理(DefaultOrchardHost.BeginRequest方法)

    BeginRequest事件处理的作用是确保所有Shell已经加载,或者在扩展有变化的时候重新加载。         void IOrchardHost .BeginRequest() {            Logger.Debug( BeginRequest);            BeginRequest();        }          protected virtual  …

  • Orchard源码分析(5.3):EndRequest事件处理(DefaultOrchardHost.EndRequest方法)

    EndRequest事件处理的作用是处理完处理引擎(ProcessingEngine)中的任务(Task)。        void IOrchardHost .EndRequest() {            Logger.Debug( EndRequest);            EndRequest();        }           protected virtual  …

  • Orchard源码分析(6):Shell相关

    概述在Orchard中,提出子站点(Tenant)的概念,目的是为了增加站点密度,即一个应用程序域可以有多个子站点。Shell是子站点(Tenant)级的单例,换句话说Shell代表了子站点。对比来看,Host是应用程序域级的单例,代表了Orchard应用程序。本文将分析Shell相关的各种类型。一、获取ShellSettings在DefaultOrchardHost类的 …

  • Orchard大数据操作之事务分批提交 - RequireNew

    本人正在做一个爬虫,从某站爬取超大的数据,准备边爬边插入到数据库, 可以在测试过程中发现异常时 之前爬了很久的数据根本没有插入到数据库, 于是这种情况下我对Orchard NH的事务产生了质疑~当我试图做一个独立的事务时            using (var trans = new TransactionScope(TransactionScopeOption.Suppress))      …

  • Orchard源码(Application_Start)异步委托调用

    ASP.NET 接收到对应用程序中任何资源的第一个请求时,名为ApplicationManager 的类会创建一个应用程序域。应用程序域为全局变量提供应用程序隔离,并允许单独卸载每个应用程序。- 在应用程序域中,将为名为 HostingEnvironment 的类创建一个实例,该实例提供对有关应用程序的信息(如存储该应用程序的文件夹的名称)的访问- 为每个请求创建asp.net核心对象。 …


更多详情欢迎到QQ群 166852192 交流。