Pri*_*ian 5 c# wcf client-side blazor
我正在尝试使用客户端 Blazor 显示现有 WCF 服务提供的一些数据。我能够添加连接的服务引用,生成代理。但是当我尝试像这样调用它时:
var client = new SoftConServiceClient();
await client.PingAsync(new PingRequest());
Run Code Online (Sandbox Code Playgroud)
有很多与 MonoTouch 相关的错误。通过深入研究 Mono 的代码,可以NotImplementedException发现System.ServiceModel.DnsEndpointIdentity.
我是否可以假设现在无法从 Blazor 客户端调用旧版 WCF 服务?如果不是这种情况,任何人都可以分享有关如何正确执行此操作的指南吗?
额外问题:如果这是不可能的,那么解决这个问题的最佳选择是什么?修改 WCF 使其成为 REST-ish 还是直接放弃它并实现 .net core api 服务?
预先非常感谢!
Core 对 WCF 的支持不是很好,而是根本不支持。特别是在身份验证和安全性方面,例如使用 WS* 绑定创建的服务。但对于使用 BasicHttpBinding 或 Restful 风格的服务创建的服务。我们可以在基于 Core 的客户端上正常调用它们,无论是使用客户端代理类还是 Channel Factory。请参考下面的官方存储库。
https://github.com/dotnet/wcf
我建议您使用 BasicHttpBinding 或使用 Asp.net WebAPI 重新构建服务器项目来创建后端服务。
https://learn.microsoft.com/en-us/aspnet/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api
如果有请随时告诉我有什么我可以帮忙的。
| 归档时间: |
|
| 查看次数: |
4868 次 |
| 最近记录: |