上下文
我们目前正在使用Microsoft.Azure.ServiceBus.EventProcessorHost用于从 Azure 事件中心引入数据。我们在 .NET Framework 上运行,而不是 .NET Core。
这个微软announcement (2017 年 2 月 2 日发布)建议更新的 Microsoft.Azure.EventHubs.Processor无论您使用什么 .NET 运行时,这都是 future 的发展方向,因为它们将维护单一代码库。
同时,微软官方Event-Hub samples最近更新仍然建议 .NET 框架使用较旧的库 (Microsoft.Azure.ServiceBus.EventProcessorHost)。
自发布以来,这两个库都已更新和发展。
问题
既然我们使用.NET框架,那么我们应该使用哪个库?
我们是否应该迁移到较新的 Microsoft.Azure.EventHubs.Processor,以便从最新的开发、改进和错误修复中受益?或者旧的是否跟得上?
这个问题也与新手相关,他们应该选择哪个库来开始使用 Azure Event-Hubs。
最佳答案
我的回答可能有些偏颇,但我更喜欢较新的 Microsoft.Azure.EventHubs
库。原因如下:
- 它是开源的。您可以查看路线图、当前问题、提交您自己的问题,并且如果需要,您可以使用 MIT 许可证访问代码。
- 它使用 .NET 标准。如果您的解决方案更改为 .NET Core 或任何其他 .NET 运行时,您可以继续使用事件中心代码。
- 这是微软 future 重点强调的库。虽然这是我的假设,但这就是我认为的原因:
- learn.microsoft.com 入门示例使用新库。 https://learn.microsoft.com/azure/event-hubs/event-hubs-dotnet-standard-getstarted-send
- 微软已经看到了开源开发的好处,几乎所有的 Azure 库都是开源的。即 Service Fabric 也刚刚开源:https://blogs.msdn.microsoft.com/azureservicefabric/2018/03/14/service-fabric-is-going-open-source/
- 创建新库的目的是取代旧库。虽然微软非常擅长支持旧的/遗留的库,但最终的目的是替换旧的库。 https://azure.microsoft.com/blog/event-hubs-dotnet-standard-client-reaches-ga/
关于c# - 我们是否应该将 Microsoft.Azure.EventHubs.Processor 库与 .NET 框架一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49285997/