Problemi relativi ai metadati
L'infrastruttura di .NET Remoting richiede che, mediante i metadati appropriati, si stabilisca una connessione tra un oggetto in un dominio applicazione e un oggetto di un altro dominio. In tutti i casi, è necessario che il dominio applicazione client sia in possesso dei metadati dell'oggetto remoto da utilizzare. Di seguito sono riportate le problematiche più importanti da considerare.
Per gli oggetti attivati da server, è necessario che il nome dell'assembly contenente il tipo sia identico sul client e sul server, così come il nome del tipo. L'identità del tipo è determinata infatti mediante la combinazione del nome dell'assembly e del tipo, compresa la versione dell'assembly ed eventuali informazioni relative ai nomi sicuri.
Per gli oggetti attivati da client, è necessario che il nome dell'assembly contenente il tipo sia identico sul client e sul server, così come il nome del tipo. È inoltre necessario che il client disponga di un'implementazione effettiva del tipo remoto e che tutti i membri dispongano esattamente della stessa firma dei membri corrispondenti sull'implementazione server.
Nota Non è necessario che l'implementazione client corrisponda all'implementazione server. Per evitare che il client acceda all'implementazione server, è possibile generare una libreria stand-in che soddisfi tutti i suddetti requisiti, ma contenga membri generati automaticamente da cui è generata l'eccezione NotSupportedException. La suddetta operazione viene eseguita dallo strumento Soapsuds (Soapsuds.exe) per i client che utilizzano la serializzazione SOAP. È possibile ottenere questo risultato per qualsiasi tipo pubblicato con marshalling per riferimento mediante un canale qualsiasi.