入门
建筑
专用服务平台
NServiceBus服务总线
运输
坚持不懈
服务洞察力
服务脉冲
服务控制
监测
样品

样品

对于基本NServiceBus概念的引导性介绍,请从NServiceBus分步教程.

这些示例旨在强调NServiceBus的各种功能是如何工作的,以及扩展点是如何插入到其他库和工具中的。

跳到样本列表

样品尚未准备好生产

示例不应是生产就绪代码,也不应与特定平台工具一起使用。它们旨在以最简单的方式说明API或功能的使用。因此,这些示例对传输、托管等进行了某些假设。请参见技术选择了解更多详细信息。

示例不是“端点插入”项目

由于示例中的端点必须选择特定的技术(传输、序列化、持久性等),因此在生产中使用此代码之前,请确保代码符合任何特定的技术选择.

示例可以下载和运行

所有示例都有一个下载链接,允许将示例解决方案作为zip文件下载。在VisualStudio中打开后,这些示例就可以运行了。请注意,一些示例可能具有某些基础结构要求,例如本地SQL Server中存在的数据库。

完整的GitHub存储库

样品位于GitHub特殊/docs.Particular.net/samples以及两者问题拉入请求被接受。

针对平台的非支持版本的示例

根据支持政策。具有扩展支持协议的客户可以通过以下方式请求存档样本:接触式支架.

技术选择

除非另有规定(由单个样本),否则以下是默认的技术选择。

Visual Studio和。净值

Visual Studio 2022。如果需要任何帮助,请升级到新版本的Visual Studio,提出一个问题.

大多数示例可用于多个框架,可通过下载按钮上的下拉菜单获得。每个框架对支持的Visual Studio版本都有自己的要求。例如。NET 6至少需要Visual Studio 2022。

配置等待

仅示例调用配置等待(布尔)当需要时。如果从示例中复制了任何代码,则适当调用配置等待(布尔)如果它可能在需要它的环境中使用,则应添加。

例如,为了帮助避免死锁并提高性能推荐打电话给ConfigureAwait(错误)只要可能,以防代码在需要它的上下文中使用1。示例中的代码为设计用于其他任何地方as-is,因此它不包含这些调用。

1有关更多详细信息,请参阅配置等待常见问题解答.

运输

样本默认为学习运输因为它的摩擦力最小。这个学习型交通工具不用于生产.

坚持不懈

样本默认为学习坚持非持久性因为两者都不需要安装基础设施。这个学习坚持不用于生产.

控制台托管

样本默认为自足执行在控制台中,因为它是最显式的,包含较少的移动块。这对于生产系统和其他主机选项应予以考虑。

登录中

样本默认记录在信息调平至控制台。在生产中,首选的方法是警告错误目标组合。

消息定义

在许多示例中,消息与可重用的帮助器和配置类一起定义在共享项目中。这样做是为了减少解决方案中的项目数量。在生产解决方案中,消息定义通常在其自己的项目中被隔离。

消息目的地

许多样品利用发送本地并通过在代码中使用字符串指定目标直接发送到端点。这样做是为了简化示例中的配置量。在生产解决方案中,大多数消息目的地都应该通过路由配置.

依赖注入

示例默认使用内置依赖项注入,因为它不需要任何外部NuGet包。切换到外部依赖注入将为自定义提供更大的灵活性。

样品

  • AWS公司
  • Azure示例
  • Azure函数
    演示如何在Azure函数中托管NServiceBus的示例。
  • Azure服务总线传输
  • 桥梁样品
  • Cosmos数据库
  • 数据总线示例
  • 依赖项注入示例
  • 加密示例
  • 托管示例
  • 日志和度量示例
  • MongoDB示例
  • MSMQ样本
  • 多租户样品
  • NHibernate持久性样品
  • OpenTelemetry示例
  • 发件箱样本
  • 管道样品
  • ServicePlatform连接示例
  • PostgreSQL传输示例
  • 发布/订阅
    与发布/订阅相关的示例代码。
  • RabbitMQ传输样本
  • RavenDB持久性示例
  • 路由示例
    与路由相关的示例代码。
  • 佐贺样本
  • 横向扩展示例
    扩展NServiceBus端点的示例代码。
  • 计划示例
  • 序列化程序示例
  • ServiceControl示例
  • ServiceInsight示例
  • Showcase示例
    更复杂的示例显示许多功能协同工作。
  • SQL持久性示例
  • SQL Server传输示例
  • 事务会话示例
  • Web示例