Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo consente di risolvere un problema a causa del quale viene visualizzato l'errore Unable to generate a temporary class (result=1) quando si esegue l'oggetto Invoke Web Services.
Si applica a: Tutte le versioni di Orchestrator
Numero KB originale: 2486643
Sintomi
Quando si esegue l'oggetto Invoke Web Services in Microsoft System Center Orchestrator o Opalis Integration Server, si ricevono uno o più degli errori seguenti nei dati pubblicati nel testo di riepilogo degli errori pubblicato:
Impossibile generare una classe temporanea (result=1).
errore CS0029: Impossibile convertire in modo implicito il tipo 'Opalis.WebServices.DynamicProxy.CustomType' in 'Opalis.WebServices.DynamicProxy.CustomType[]'
errore CS0030: Impossibile convertire in modo implicito il tipo 'Opalis.WebServices.DynamicProxy.CustomType[]' in 'Opalis.WebServices.DynamicProxy.CustomType'
Causa
Un problema noto con WSDL.exe può causare la generazione errata di una classe proxy se una matrice di tipo complesso include un elemento che è anche una matrice di tipo complesso e per cui esiste un solo elemento.
Note
WSDL.exe è incluso in Microsoft .NET Framework.
Soluzione alternativa
Sono disponibili tre soluzioni alternative:
È possibile generare manualmente la classe proxy usando WSDL.exe e quindi modificare la classe proxy in cui il tipo di dati è stato creato in modo inappropriato come matrice bidimensionale (ad esempio,
CustomType[][]
) in modo che si tratti di una matrice unidimensionale , ad esempioCustomType[]
.È possibile modificare il tipo di dati nel linguaggio WSDL (Web Services Description Language) desiderato in modo che nella definizione sia incluso un secondo elemento facoltativo. A tale scopo, aggiungere un elemento come l'esempio seguente:
<xs:element minOccurs="0" name="dummyElement" nillable="true" type="xs:string"/>
È possibile modificare il tipo complesso nel file WSDL desiderato in modo che gli attributi limite facciano parte del tipo complesso invece di essere parte dell'elemento. È quindi possibile spostare gli
minOccurs
attributi emaxOccurs
nel tipo complesso e quindi rimuoverli dall'elemento .