Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel hilft Ihnen, ein Problem zu umgehen, bei dem beim Ausführen des Invoke Web Services-Objekts beim Ausführen des Invoke Web Services-Objekts kein temporärer Klassenfehler (Result=1) generiert werden kann.
Gilt für: Alle Versionen von Orchestrator
Ursprüngliche KB-Nummer: 2486643
Symptome
Wenn Sie das Invoke Web Services-Objekt in Microsoft System Center Orchestrator oder Opalis Integration Server ausführen, erhalten Sie einen oder mehrere der folgenden Fehler im veröffentlichten Fehlerzusammenfassungstext :
Eine temporäre Klasse kann nicht generiert werden (result=1).
fehler CS0029: Typ 'Opalis.WebServices.DynamicProxy.CustomType' kann nicht implizit in 'Opalis.WebServices.DynamicProxy.CustomType[]' konvertiert werden.
fehler CS0030: Typ 'Opalis.WebServices.DynamicProxy.CustomType[]' kann nicht implizit in 'Opalis.WebServices.DynamicProxy.CustomType' konvertiert werden.
Ursache
Ein bekanntes Problem mit WSDL.exe kann dazu führen, dass eine Proxyklasse falsch generiert wird, wenn ein Array mit komplexem Typ ein Element enthält, das auch ein Array von komplexem Typ ist und für das nur ein Element vorhanden ist.
Notiz
WSDL.exe ist im Microsoft .NET Framework enthalten.
Problemumgehung
Für dieses Problem gibt es drei Umgehungen:
Sie können die Proxyklasse manuell generieren, indem Sie WSDL.exe verwenden und dann die Proxyklasse ändern, in der der Datentyp unangemessen als zweidimensionales Array (z. B. ) erstellt wurde,
CustomType[][]
sodass es sich um ein eindimensionales Array handelt (zCustomType[]
. B. ).Sie können den Datentyp in der gewünschten Webdienstbeschreibungssprache (WSDL) ändern, sodass ein zweites optionales Element in der Definition enthalten ist. Dazu können Sie ein Element wie das folgende Beispiel hinzufügen:
<xs:element minOccurs="0" name="dummyElement" nillable="true" type="xs:string"/>
Sie können den komplexen Typ in der gewünschten WSDL ändern, sodass die Begrenzungsattribute Teil des komplexen Typs sind, anstatt Teil des Elements zu sein. (Das heißt, Sie können die Attribute und
maxOccurs
AttributeminOccurs
in den komplexen Typ verschieben und dann aus dem Element entfernen.)