我有一个由无状态服务调用的有状态服务,在 Visual Studio 15.4 上运行的 .Net Standard Asp.net Core 2.0 中。
我无法使 Service Remoting V2 工作。
适用于 V1 的有状态服务中的旧代码是无效 anymore
protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners()
{
return new List<ServiceReplicaListener>()
{
new ServiceReplicaListener((context) =>this.CreateServiceRemotingListener(context))
};
我试着遵循这个tutorial https://learn.microsoft.com/en-us/azure/service-fabric/service-fabric-reliable-services-communication-remoting#how-to-use-remoting-v2-stack但这个例子是针对无国籍的 one.
我尝试更改其中的代码但没有成功。
protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners()
{
return new List<ServiceReplicaListener>()
{
new ServiceReplicaListener((c) =>new FabricTransportServiceRemotingListener(c, this))
};
}
此外,教程中也没有说明如何或在何处使用此代码
var proxyFactory = new ServiceProxyFactory((c) =>
{
return new FabricTransportServiceRemotingClientFactory();
});
我被困住了,有人可以告诉我如何让它工作吗?
在你的有状态服务中,在方法中CreateServiceReplicaListeners
,使用此代码:
protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners()
{
return this.CreateServiceRemotingReplicaListeners();
}
在定义远程服务的文件中界面,添加以下内容:
[assembly: FabricTransportServiceRemotingProvider(RemotingListener = RemotingListener.V2Listener, RemotingClient = RemotingClient.V2Client)]
(例如,就在using
命名空间列表。)
添加端点:<Endpoint Name="ServiceEndpointV2" />
并重建客户端。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)