2009-12-07 15 views
0

Je comprends que lorsqu'un nouveau domaine d'application est créé, le cadre crée implicitement des canaux et des puits. Si ce n'est pas le cas, vous ne pouvez pas créer un objet dans un domaine et utiliser un proxy dans l'autre..NET: Canal et puits entre les domaines d'application non liés

(Ceci est une compréhension, s'il vous plaît me corriger si je me trompe.)

De plus, si un objet est marshalé à des fins de communication à distance, un canal doit être enregistré explicitement pour que les autres à en faire usage.

(droit à ce jour?)

est ici où casse ma compréhension vers le bas. Scénario:

Appdomain 1: Serveur distant avec un objet marshalé, le canal est enregistré.
Appdomain 2: Client souhaitant utiliser l'objet marshalé.
Appdomain 3: Pour un plugin. Créé à partir de l'appdomain 1 (serveur), création des canaux implicites précités entre les domaines d'application 1 et 3.

Si un objet est créé dans appdomain 3 (plugin) mais que la référence du proxy doit être utilisée dans l'appdomain 2 (client), canal (s) et les puits sont nécessaires. Comment puis-je faire cela?

Répondre

0

La réponse est simplement d'enregistrer une chaîne dans appdomain 3 (plugin appdomain). Je pensais qu'il devait y avoir une plomberie plus explicite entre les deux domaines, mais il semble que tant que chaque domaine a un canal enregistré, l'infrastructure d'accès distant gère tout le reste.