Blazor 客户端和 WCF
Blazor client-side and WCF
我正在尝试使用客户端 Blazor 来显示现有 WCF 服务提供的一些数据。我能够添加连接的服务引用,生成代理。但是当我试图像这样调用它时:
var client = new SoftConServiceClient();
await client.PingAsync(new PingRequest());
存在大量与 MonoTouch 相关的错误。通过深入研究 Mono 的代码,在 System.ServiceModel.DnsEndpointIdentity
.
的构造函数中有一个显式的 NotImplementedException
我认为现在无法从 Blazor 客户端调用遗留 WCF 服务是否正确?如果不是这种情况,任何人都可以分享有关如何正确执行此操作的指南吗?
奖金问题:如果这不可能,那么解决这个问题的最佳选择是什么?修改 WCF 使其成为 REST-ish 或只是放弃它并实现 .net 核心 api 服务?
提前致谢!
开箱即用的 .NET Core 不支持 WCF,但是似乎有一个社区项目正在致力于在 .NET Core 中添加对它的支持
https://github.com/CoreWCF/CoreWCF
有关详细信息,请参阅 。
Am I right to assume that there is no way now to call legacy WCF
service from Blazor client-side?
是的,你是对的...Blazor client-side 不支持 WCF,将来也不会支持。 Microsoft 已决定从 .Net 5.0 开始停止支持它,并建议改用 Web Api。
根据您对 WCF 的投入程度,您可能会转向 Web API,也许是 gRPC,或者继续使用 WCF,希望社区移植和支持 WCF 的努力能够成功。
Core 不是完全不支持 WCF,而是不是很好。特别是在身份验证和安全方面,比如使用 WS* 绑定创建的服务。但对于使用 BasicHttpBinding 或 Restful 样式服务创建的服务。我们可以在 Core-based 客户端上正常调用它们,无论是使用客户端代理 class 还是 Channel Factory。
请参考以下官方仓库。
https://github.com/dotnet/wcf
我建议您 re-construct 使用 BasicHttpBinding 或使用 Asp.net WebAPI 创建后端服务的服务器项目。
https://docs.microsoft.com/en-us/aspnet/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api
如果有什么我可以帮忙的,请随时告诉我。
我能够使用 SoftCore 在 .Net 5 中发现的技术来安装 WCF 4.7.2。
我也可以工作 SoftCore Hosted Example Blazor Server.
我正在尝试使用客户端 Blazor 来显示现有 WCF 服务提供的一些数据。我能够添加连接的服务引用,生成代理。但是当我试图像这样调用它时:
var client = new SoftConServiceClient();
await client.PingAsync(new PingRequest());
存在大量与 MonoTouch 相关的错误。通过深入研究 Mono 的代码,在 System.ServiceModel.DnsEndpointIdentity
.
NotImplementedException
我认为现在无法从 Blazor 客户端调用遗留 WCF 服务是否正确?如果不是这种情况,任何人都可以分享有关如何正确执行此操作的指南吗?
奖金问题:如果这不可能,那么解决这个问题的最佳选择是什么?修改 WCF 使其成为 REST-ish 或只是放弃它并实现 .net 核心 api 服务?
提前致谢!
开箱即用的 .NET Core 不支持 WCF,但是似乎有一个社区项目正在致力于在 .NET Core 中添加对它的支持
https://github.com/CoreWCF/CoreWCF
有关详细信息,请参阅
Am I right to assume that there is no way now to call legacy WCF service from Blazor client-side?
是的,你是对的...Blazor client-side 不支持 WCF,将来也不会支持。 Microsoft 已决定从 .Net 5.0 开始停止支持它,并建议改用 Web Api。
根据您对 WCF 的投入程度,您可能会转向 Web API,也许是 gRPC,或者继续使用 WCF,希望社区移植和支持 WCF 的努力能够成功。
Core 不是完全不支持 WCF,而是不是很好。特别是在身份验证和安全方面,比如使用 WS* 绑定创建的服务。但对于使用 BasicHttpBinding 或 Restful 样式服务创建的服务。我们可以在 Core-based 客户端上正常调用它们,无论是使用客户端代理 class 还是 Channel Factory。
请参考以下官方仓库。
https://github.com/dotnet/wcf
我建议您 re-construct 使用 BasicHttpBinding 或使用 Asp.net WebAPI 创建后端服务的服务器项目。
https://docs.microsoft.com/en-us/aspnet/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api
如果有什么我可以帮忙的,请随时告诉我。
我能够使用 SoftCore 在 .Net 5 中发现的技术来安装 WCF 4.7.2。 我也可以工作 SoftCore Hosted Example Blazor Server.