Condividi tramite


Utilizzo di Soapsuds.exe con .NET Remoting

È possibile utilizzare Soapsuds.exe per generare un assembly o un codice sorgente che contiene i metadati necessari per chiamare un oggetto remoto.

NoteNota:

Soapsuds.exe funziona solo con oggetti remoti che utilizzano HttpChannel.

Per generare un assembly, digitare un comando simile al seguente:

soapsuds.exe -url:http://SomeServer/MyObject.rem?wsdl -oa:MyProxy.dll

Dove l'oggetto remoto è ospitato su un computer chiamato SomeServer el'URL dell'oggetto è MyObject.rem. Si noti l'aggiunta di ?wsdl alla fine dell'URL. Ciò è necessario per il funzionamento di Soapsuds.exe. Si può quindi prendere MyProxy.dll e farvi riferimento nell'applicazione client.

Per generare un codice sorgente, digitare un comando simile al seguente:

soapsuds.exe -url:http://SomeServer/MyObject.rem?wsdl -gc

Dove l'oggetto remoto è ospitato su un computer chiamato SomeServer el'URL dell'oggetto è MyObject.rem. Si noti l'aggiunta di ?wsdl alla fine dell'URL. Ciò è necessario per il funzionamento di Soapsuds.exe. Si può quindi prendere Server.cs generato e aggiungerlo al progetto dell'applicazione client. Ciò ha il vantaggio supplementare di non dover fornire un assembly proxy separato insieme all'applicazione client.

Indipendentemente dal tipo di output (assembly o codice sorgente), Soapsuds.exe genera per impostazione predefinita quello che viene chiamato un proxy con wrapper. Il proxy con wrapper è una classe derivata da RemotingClientProxy. L'URL dell'oggetto remoto è hardcoded in questa classe derivata. In alternativa è possibile specificare -nowp sulla riga di comando per generare un proxy senza wrapper. La classe generata per un proxy senza wrapper è una classe vuota. È possibile vedere le differenze tra proxy con e senza wrapper generando due volte il codice sorgente di un oggetto remoto, una volta con -nowp e una volta senza (assicurarsi di rinominare il file generato con estensione cs; in caso contrario il file verrà sovrascritto quando si esegue nuovamente Soapsuds.exe. È necessario generare proxy senza wrapper perché l'URL dell'oggetto remoto non deve essere hardcoded.

Per ulteriori informazioni sulle opzioni della riga di comando disponibili per soapsuds.exe, vedere: Soapsuds Tool (Soapsuds.exe).

Vedere anche

Altre risorse

.NET Remoting avanzato

Footer image

Copyright © 2007 Microsoft Corporation. Tutti i diritti riservati.