Не удается создать временный класс (result=1) ошибку при выполнении объекта Invoke Web Services
Эта статья поможет вам обойти проблему, из-за которой при выполнении объекта Invoke Web Services появляется ошибка Не удалось создать временный класс (result=1).
Исходная версия продукта: System Center Orchestrator
Исходный номер базы знаний: 2486643
Симптомы
При выполнении объекта Invoke Web Services в Microsoft System Center Orchestrator или Opalis Integration Server в опубликованных данных сводки ошибок появляется одна или несколько из следующих ошибок:
Не удалось создать временный класс (result=1).
ошибка CS0029: не удается неявно преобразовать тип "Opalis.WebServices.DynamicProxy.CustomType" в "Opalis.WebServices.DynamicProxy.CustomType[]".
ошибка CS0030: не удается неявно преобразовать тип "Opalis.WebServices.DynamicProxy.CustomType[]" в "Opalis.WebServices.DynamicProxy.CustomType"
Причина
Известная проблема с WSDL.exe может привести к неправильному созданию прокси-класса, если массив сложного типа содержит элемент, который также является массивом сложного типа и для которого существует только один элемент.
Примечание.
WSDL.exe входит в платформа .NET Framework Майкрософт.
Обходной путь
Существует три обходных решения:
Класс прокси-сервера можно создать вручную с помощью WSDL.exe, а затем изменить класс прокси- сервера, в котором тип данных был создан неправильно в виде двумерного массива (например,
CustomType[][]
), чтобы он был одномерным массивом (например,CustomType[]
).Вы можете изменить тип данных на требуемом языке описания веб-служб (WSDL), чтобы в определение был включен второй необязательный элемент. Это можно сделать, добавив элемент, например следующий пример:
<xs:element minOccurs="0" name="dummyElement" nillable="true" type="xs:string"/>
Вы можете изменить сложный тип в требуемом WSDL, чтобы атрибуты границ были частью сложного типа, а не частью элемента. (То есть можно переместить
minOccurs
атрибуты иmaxOccurs
в сложный тип, а затем удалить их из элемента.)
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по