Partager via


Problèmes de design avancé

Comme les informations de type d'un type distant sont nécessaires au client, il est souvent plus facile de déployer simplement la bibliothèque de types sur le client pour une utilisation comme bibliothèque de métadonnées. Cependant, dans de nombreux cas, vous ne voudrez pas que les clients aient accès à l'implémentation du type. Vous pouvez résoudre ce problème de différentes manières :

  • Générez un client solitaire à l'aide de l'outil Soapsuds Tool (Soapsuds.exe), comme indiqué dans la rubrique Clients solitaires.

  • Déployez, sur le client, un assembly de métadonnées seulement avec les mêmes informations de nom et de type que celles de l'assembly serveur et désactivez la vérification de version ou laissez les versions vides.

  • Déclarez une interface dans une bibliothèque séparée et déployez cette bibliothèque avec le client. Publiez une classe de serveur qui implémente votre interface ; le client peut l'utiliser en se procurant un proxy vers l'interface qu'il implémente.

    Notes

    Le client devra appeler la méthode Activator.GetObject pour acquérir le proxy. L'appel de new (New en Visual Basic) lèvera une erreur de compilation ; vous ne pouvez pas créer une instance d'une interface.

  • Générez une classe de wrapper accessible à distance pour la classe réelle. Publiez et déployez la bibliothèque de wrapper. Le client n'aura pas accès à l'objet réel.

Voir aussi

Concepts

Clients solitaires

Autres ressources

Accès distant avancé