我对.net核心全新。
我的任务是在Linux上运行WCF服务。 我的WCF服务是使用.NET Framework 4构建的。 我在IIS中托管我的服务。
你能否为我提供正确的指导,处理以下问题,
我需要对当前的WCF服务进行哪些更改才能在Linux上运行?
我需要什么操作系统版本的Linux才能与.net核心一起使用?
目前,我在IIS中托管我的服务,如何在Linux中托管我的服务,因为我们有大约40项服务。
我在互联网上找到的是在控制台应用程序中托管WCF服务,是否有更好的托管方式,因为我有40多项服务。
答案 0 :(得分:4)
.Net Core 1.0不支持编写WCF服务器,只支持连接到它们的客户端。 The README of the WCF repository说:
仍应使用完整的.NET Framework版本创建WCF服务应用程序。
Microsoft正在考虑在未来添加对WCF服务器的支持,但目前尚无定论。 2016年7月16日起a post on the WCF repository:
我们已经审核了上述有关.NET Core中WCF服务器支持的所有重要响应。
WCF功能团队正在积极研究未来.NET Core版本中WCF功能的路线图计划。对于后续步骤,我们需要您在顶级方案,功能使用和目标配置文件方面提供反馈。
然后链接到a survey。
答案 1 :(得分:1)
我想这并不是你想要的,但你可能会发现它很有用
dotnetcorersi是基于TCP的解决方案,用于在dotnet核心框架中进行远程服务调用。
托管您的服务
// Initialize new instance of RemoteServiceContainer
var container = new RemoteServiceContainer();
// Register MyCustomService as IMyCustomService
container.RegisterService(typeof(IMyCustomService), new MyCustomService());
// Open connection
container.Open(serverIp, port);
在客户端初始化服务代理
// Create instance of ServiceChannel
var servicesChannel = new ServiceChannel(serverIp, port);
// Generate remote service proxy
var proxy = servicesChannel.GetRemoteService<IMyCustomService>();
使用您的服务
// Do some work in the server context
proxy.DoSomething();