对于基本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包。切换到外部依赖注入将为自定义提供更大的灵活性。