2017-10-14 3 views
0

J'ai un service Stateful appelé par un service sans état, dans .NET Standard Asp.net Core 2.0 s'exécutant sur Visual Studio 15.4. Je ne peux pas faire fonctionner le Service Remoting V2.Service Fabric Stateful Remoting V2

L'ancien code au service Stateful qui a fonctionné pour V1 est pas valide plus

protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners() 
    { 
     return new List<ServiceReplicaListener>() 
      { 
       new ServiceReplicaListener((context) =>this.CreateServiceRemotingListener(context)) 
      }; 

J'ai essayé de suivre cette tutorial mais l'exemple est le sans état un.

J'ai essayé de changer le code dans ceci sans succès.

protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners() 
    { 
     return new List<ServiceReplicaListener>() 
      { 
       new ServiceReplicaListener((c) =>new FabricTransportServiceRemotingListener(c, this)) 
      }; 
    } 

En outre, il n'y a pas des instructions sur la façon ou où utiliser ce code dans le tutoriel

var proxyFactory = new ServiceProxyFactory((c) => 
    { 
     return new FabricTransportServiceRemotingClientFactory(); 
    }); 

Je suis coincé, quelqu'un pourrait me montrer comment le faire fonctionner?

Répondre

1

Dans votre service stateful, dans la méthode CreateServiceReplicaListeners, utilisez ce code:

protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners() 
{ 
    return this.CreateServiceRemotingReplicaListeners(); 
} 

Et dans le fichier qui définit votre service d'accès distant interface, ajoutez ceci:

[assembly: FabricTransportServiceRemotingProvider(RemotingListener = RemotingListener.V2Listener, RemotingClient = RemotingClient.V2Client)]

(par exemple, juste en dessous de la liste des espaces de noms using.)

Ajouter le point de terminaison: <Endpoint Name="ServiceEndpointV2" />

Et de reconstruire le client.

+0

pourriez-vous donner quelques détails sur comment appeler cela une fois configuré? Comme du côté client. – Choco

+0

Créer un ServiceProxy à l'aide de l'url de service et de la clé de partition (si elle est active) https://docs.microsoft.com/fr-fr/azure/service-fabric/service-fabric-reliable-services-communication-remoting#call- méthodes de service à distance – LoekD