Я пытаюсь использовать мой веб-сервис .Net в проекте Flex Builder 3.Подпись функции в сервисе:
bool MyFunction(Enums.Channels var1, Enums.Payments.PayMethods var2)
Я попытался импортировать WSDL с помощью мастера, но когда я попытался вызвать веб-сервис, это приводит к ошибке, указывающей
"Невозможно ввести тип «http://www.w3.org/2001/XMLSchema::EnumsChannel" для простого типа»
Какой тип объекта мне нужно создать в Flex Builder 3 для передачи в веб-службу, чтобы он распознал его как соответствующийtype? Мастер неправильно создает соответствующий тип. Вот xsd для перечислений.
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.datacontract.org/2004/07/My.Shared" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/My.Shared">
<xs:simpleType name="Enums.Channels">
<xs:restriction base="xs:string">
<xs:enumeration value="Web"/>
<xs:enumeration value="ContactCenter"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="Enums.Channels" nillable="true" type="tns:Enums.Channels"/>
<xs:simpleType name="Enums.Payments.PayMethods">
<xs:restriction base="xs:string">
<xs:enumeration value="CreditCard"/>
<xs:enumeration value="PayPal"/>
<xs:enumeration value="eBillme"/>
<xs:enumeration value="BillMeLater"/>
<xs:enumeration value="TeleCheck"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="Enums.Payments.PayMethods" nillable="true" type="tns:Enums.Payments.PayMethods"/>
</xs:schema>
Я хотел бы попытаться создать свои собственные объекты для вызова службы самостоятельно (без мастера).... создал mx:WebService
и mx:Operation
, но не уверен, как обрабатывать параметры перечисления.
Полагаю, это немного похоже на вопрос Flex, .NET Web Service и NumericПеречисляет , но немного наоборот.