NServiceBus自动注册以及用户实现其所有组件处理程序和传奇,这样所有实例化模式和连接在默认情况下都是正确的,没有错误。

NServiceBus在容器构建(目前Autofac的ilmerge版本),但它可以取代任何其他容器。

获得其他容器

nuget其他容器可用。

配置NServiceBus使用其他容器

  • v5
  • V4

    编辑

    var configuration = new BusConfiguration();
    
    // Autofac
    configuration.UseContainer<AutofacBuilder>();
    // Autofac with a container instance
    configuration.UseContainer<AutofacBuilder>(c => c.ExistingLifetimeScope(lifetimeScope)); // Castle
    configuration.UseContainer<WindsorBuilder>();
    // Castle with a container instance
    configuration.UseContainer<WindsorBuilder>(c => c.ExistingContainer(windsorContainer)); // Ninject
    configuration.UseContainer<NinjectBuilder>();
    // Ninject with a container instance
    configuration.UseContainer<NinjectBuilder>(c => c.ExistingKernel(ninjectKernel)); // Unity
    configuration.UseContainer<UnityBuilder>();
    // Unity with a container instance
    configuration.UseContainer<UnityBuilder>(c => c.UseExistingContainer(unityContainer)); // Spring
    configuration.UseContainer<SpringBuilder>();
    // Spring with an instance
    configuration.UseContainer<SpringBuilder>(c => c.ExistingApplicationContext(springApplicationContext)); // StructureMap
    configuration.UseContainer<StructureMapBuilder>();
    // StructureMap with a container instance
    configuration.UseContainer<StructureMapBuilder>(c => c.ExistingContainer(structureMapContainer));

    插入自己的容器

  • v5
  • V4

    编辑

    public void CustomContainerExtensionUsage()
    {
    var configuration = new BusConfiguration();
    //Register the container in the configuration with '.UseContainer<T>()'
    configuration.UseContainer<MyContainer>();
    }
    // Create a class that implements 'ContainerDefinition' and returns your 'IContainer' implementation.
    public class MyContainer : ContainerDefinition
    {
    public override IContainer CreateContainer(ReadOnlySettings settings)
    {
    return new MyObjectBuilder();
    }
    }
    //Create a class that implements 'IContainer'
    public class MyObjectBuilder : IContainer
    {
  • NServiceBus-容器的更多相关文章

    1. nservicebus教程-目录

      表的内容 开始 坚持NServiceBus 扩展 每天 举办 管理和监控 发布订阅 长时间运行的流程 定制 版本控制 常见问题解答 样品 开始 概述 NServiceBus一步一步向导 架构原则 事务 ...

    2. .NET 微服务和Docker容器

      .NET 微服务:适用于容器化 .NET 应用的体系结构 容器和 Docker 简介 什么是 Docker? Docker 术语 Docker 容器.映像和注册表 为 Docker 容器选择 .NET ...

    3. .NET Core/.NET5/.NET6 开源项目汇总6:框架与架构设计(DDD、云原生/微服务/容器/DevOps/CICD等)项目

      系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...

    4. docker——容器安装tomcat

      写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

    5. 网页提交中文到WEB容器的经历了些什么过程....

      先准备一个网页 <html><meta http-equiv="Content-Type" content="text/html; charset=gb ...

    6. [Spring]IoC容器之进击的注解

      先啰嗦两句: 第一次在博客园使用markdown编辑,感觉渲染样式差强人意,还是github的样式比较顺眼. 概述 Spring2.5 引入了注解. 于是,一个问题产生了:使用注解方式注入 JavaB ...

    7. 深入理解DIP、IoC、DI以及IoC容器

      摘要 面向对象设计(OOD)有助于我们开发出高性能.易扩展以及易复用的程序.其中,OOD有一个重要的思想那就是依赖倒置原则(DIP),并由此引申出IoC.DI以及Ioc容器等概念.通过本文我们将一起学 ...

    8. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

      首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

    9. JS判断鼠标进入容器方向的方法和分析window.open新窗口被拦截的问题

      1.鼠标进入容器方向的判定 判断鼠标从哪个方向进入元素容器是一个经常碰到的问题,如何来判断呢?首先想到的是:获取鼠标的位置,然后经过一大堆的if..else逻辑来确定.这样的做法比较繁琐,下面介绍两种 ...

    10. docker4dotnet #2 容器化主机

      .NET 猿自从认识了小鲸鱼,感觉功力大增.上篇<docker4dotnet #1 前世今生&世界你好>中给大家介绍了如何在Windows上面配置Docker for Window ...

    随机推荐

    1. task判断任务是否存在

      tasklist|find /i "qq.exe" ||exit taskkill /im qq.exe /f

    2. JS 点击事件学习总结

      废话篇: 在我们编写无论什么网页内容的时候我们总是或多或少的要接触到点击事件这一范畴的,写过几个简短的demo和网页之后,感觉自己对电机事件一类的东西了解也更为的清楚了,之前写过很多零零散散的东西现在 ...

    3. Velocity模板中的注释

      Velocity ——VTL模板中的注释 注释允许在模板中包含描述文字,而这些文字不会被放置到模板引擎的输出中.注释是一种有效的提醒自己和向别人解释你的VTL语句要做什么事情的方法.你也可以把注释用来 ...

    4. 连接Access数据库查询语句

      --在使用之前注意将“生成”里的“配置管理器”的“配置平台”改成X86 private void button1_Click(object sender, EventArgs e)//查询 { Ole ...

    5. [转] 解析Qt资源文件使用

      解析Qt资源文件使用 转自:http://mobile.51cto.com/symbian-270121.htm 本文详细的介绍了Qt文件的使用,和大部分GUI框架设计工具一样,Qt也引入了资源文件系 ...

    6. 【转】很有用但鲜有人知的 Linux 命令

      Linux命令行吸引了大多数Linux爱好者.一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务.Linux命令和它们的转换对于Linux用户.Shell脚本程序员和管理员来说是最有 ...

    7. MornUI 源码阅读笔记

      1. label的mouseChildren属性为true,但label本身是不需要监听textfield的任何事件的, 个人猜测是为了给TextInput, TextArea用的,因为后两者需要监听 ...

    8. yii 打印sql

      $query = TableModel::find()->where([‘xxx’=>xxx]); var_dump($query->prepare(\Yii::$app->d ...

    9. 【转】使用Xcode和Instruments调试解决iOS内存泄露

      原文网址:http://blog.csdn.net/totogo2010/article/details/8233565 虽然iOS 5.0版本之后加入了ARC机制,由于相互引用关系比较复杂时,内存泄 ...

    10. 如何自定义一个优雅的ContentProvider

      最近在code review的时候发现很多人的provider定义的不是很好,写的很粗糙 以至于代码健壮性不够好,可读性也不强 但是你既然写了content provider 就是要给别人调用的,如果 ...