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. WINCE设备开机灰屏问题(很怪异)

      WINCE设备开机灰屏问题(很怪异) 1.     问题现象 图1 无法进入系统,虽然没有调试信息,但应该可以判断是程序跑飞了.我们这款产品用到3种显示屏(采用不同的驱动IC),可是测试发现1和2号屏 ...

    2. leetcode Database1(三)

      一.Rising Temperature Given a Weather table, write a SQL query to find all dates' Ids with higher tem ...

    3. Linux多线程(三)(同步互斥)

      1. 线程的同步与互斥 1.1. 线程的互斥 在Posix Thread中定义了一套专门用于线程互斥的mutex函数.mutex是一种简单的加锁的方法来控制对共享资源的存取,这个互斥锁只有两种状态(上 ...

    4. PHPStorm/webstorm tips

      phpstorm对于使用PHP开发web的人员来说,是一个非常不错的编辑开发IDE,以前用过sublime,但是相比于storm,sublime在浏览legacy代码,类代码编辑方面明显要逊色不少.同 ...

    5. [ionic开源项目教程] - 第4讲 通Service层获取数据列表

      第4讲:通Service层获取数据列表 上一讲中页面的基本架构已完成,这一讲介绍如何通过service层从服务器请求数据,在通过controller层为载体,显示到视图层. 1.在services.j ...

    6. 精选37条强大的常用linux shell命令组合

      任务                             命令组合 1 删除0字节文件 find . -type f -size 0 -exec rm -rf {} \;find . type f ...

    7. PHP常见框架

      PHP是一种在国内外都比较流行的开源服务器端脚本开发语言.能够适应大中小型项目的开发需求.我们将在这篇文章中向大家介绍几款主流PHP框架及其相关优缺点评比,作为一个参考分享给朋友们. 主要参考的PHP ...

    8. C语言中的三值合一

      在学习C语言中我们会发现这样一种情况: #include<stdio.h> Int main() { Int ar[10]; printf(“%p\n”,ar); printf(“%p\n ...

    9. Filling a Path 模式

      Filling a Path When you fill the current path, Quartz acts as if each subpath contained in the path ...

    10. 查看mysql库大小,表大小,索引大小

      查看所有库的大小 mysql> use information_schema; Database changed mysql> selectconcat(round(sum(DATA_LE ...