Actions de DataService personnalisées

Le contrat de DataService comporte deux méthodes permettant d’appeler une action universelle :

byte[] CustomGet(string operationCode, byte[] args)
void CustomExecute(string operationCode, byte[] args)

Tout comme le type retourné (uniquement CustomGet), l’argument est un tableau d’octets pour qu’il soit possible d’envoyer et de recevoir n’importe quelle structure.

Appel sur POS

Les méthodes pour appeler les actions universelles se trouvent dans le service ISynchronizationService. Il suffit d’implémenter dans son propre module une instance du service mentionné ci-dessus et appeler l’opération souhaitée.

Gestion sur DataService

Pour brancher la prise en charge d’une action universelle, il faut enregistrer sa gestion dans un module d’extension.

Attention
La classe dotée d’un attribut doit être statique
[DataServiceBusinessModule]
public static class Module    
{
   [MethodInitializer]
   public static void Initialize()        
   {
      var customOpsService = IoC.Container.Resolve<ICustomOperationsService>();
      customOpsService.RegisterCustomGet("my_op", MyCustomGet);
   }
   private static byte[] MyCustomGet(byte[] data)        
   {
     //code   
   }
}

Czy ten artykuł był pomocny?