2010-06-20 13 views
0

Je suis en pleine crise..NET Remoting Client Fichier de configuration multiserveur Objet

Comment puis-je enregistrer un objet dans un fichier de configuration plusieurs fois?

est simple j'ai server1, server2 et server3 qui ont l'objet (SomeObject) et je voudrais faire quelque chose comme ceci sur le fichier de configuration des clients:

<client> 
    <wellknown type="IRemCalc.ICalc, IRemCalc" 
      url="http://localhost:12234/RemoteCalc1.soap" /> 
    <wellknown type="IRemCalc.ICalc, IRemCalc" 
    url="http://localhost:1234/RemoteCalc1.soap"/> 
</client> 

Mais il me renvoie une exception en disant que je ne pouvez pas enregistrer le même objet deux fois, des solutions?

Ceci est pour un travail scolaire et je suis en train de mourir ici.

+0

1) Pour formater du code XML ou du code, n'utilisez pas HTML. Au lieu de cela, il suffit de coller le code XML ou le code, sélectionnez-le dans l'éditeur, puis appuyez sur Ctrl + K. 2) Il est intéressant que votre école travaille avec des technologies obsolètes. Remoting a été remplacé par WCF. –

Répondre

0

Remoting est obsolète maintenant, et je ne l'ai pas utilisé pendant de nombreuses années. Pourtant, si je me souviens bien, vous en fait ne peut pas enregistrer le même type plusieurs fois.

En enregistrant un type, vous vous assurez que lorsque vous utiliserez "new type()" dans votre code, il créera un proxy distant au lieu du type réel. Ce proxy s'adressera naturellement à un seul serveur distant.

Si vous devez utiliser plusieurs serveurs, vous devrez créer "manuellement" des instances de proxy. Comme je l'ai dit, je n'ai pas utilisé Remoting depuis environ 2004, donc je ne me souviens pas de l'API pour créer manuellement un proxy.

+0

Thakz pour l'aide, mais cette question est d'un travail que je dois faire à l'université, je sais que c'est obsolète mais mes élèves vivent encore dans le passé ce que j'ai à faire ... Les questions simples disent que sans changer n'importe quel code, configurez le fichier de configuration client de sorte qu'il est possible d'utiliser 3 serveurs pour un objet insted d'un. . . –

+0

@Trent: évidemment impossible sans changer de code. Considérez: ce qui changerait pour le faire utiliser le serveur 2 au lieu du serveur 1? La magie? –

+0

dans le temps d'exécution est facile, il suffit d'obtenir le proxy par Activator.getInstance avec des URL différentes, mais dans les fichiers de configuration ne sais pas –