如何在 net 5.0 中使用服务通信?

Posted

技术标签:

【中文标题】如何在 net 5.0 中使用服务通信?【英文标题】:How can I use Service Communciation in net 5.0? 【发布时间】:2021-03-13 03:11:08 【问题描述】:

我使用 WCF 与我的服务进行通信。我将我的项目从 .net 框架升级到了 net 5.0。但我发现没有“ServiceHost”类。根据我的搜索结果,net 5.0 不支持 WCF。有没有办法与我的服务沟通?

【问题讨论】:

.NET 5 仅支持 WCF 客户端。不支持服务器端。对于新的开发,建议使用 gRPC 作为替代方案。对于现有开发,您可以继续使用 .NET Framework(将继续受支持),也可以研究社区计划(例如 Core WCF,尽管尚未准备好生产)。 【参考方案1】:

Windows Communication Foundation (WCF) 的原始实现仅在 Windows 上受支持。但是,.NET Foundation 提供了一个客户端端口。它是完全开源的、跨平台的,并得到 Microsoft 的支持。下面列出了核心 NuGet 包:

    System.ServiceModel.Duplex。

    System.ServiceModel.Federation。

    System.ServiceModel.Http.

    System.ServiceModel.NetTcp.

    System.ServiceModel.Primitives。

    System.ServiceModel.Security.

社区维护着补充上述客户端库的服务器组件。可以在CoreWCF 找到 GitHub 存储库。 Microsoft 不正式支持服务器组件。对于 WCF 的替代方案,请考虑 gRPC。

【讨论】:

以上是关于如何在 net 5.0 中使用服务通信?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ServiceStack 5.0 项目中使用来自 ServiceStack 4.0 的服务模型?

如何在 ASP.NET Core 5.0 中处理来自客户端的双重请求?

如何授权 .NET 5.0 / C# 应用程序在没有用户交互的情况下与 Microsoft 365 SharePoint Online 交互?

在 VB.NET 中如何与字节类型的命名管道服务器通信?

如何确定在 C# ASP.NET CORE MVC 5.0 中选择了哪个单选按钮

如何在 .Net 5.0 C# 或 F# 中编写以特定时间间隔定期运行的代码