Requisição ao Web Service
As requisições ao Web Service, no formato XML, seguem o padrão mostrado no exemplo a seguir.
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:elip="http://Elipse.WebService.SendData"
xmlns:arr="http://schemas.microsoft.com/2003/10/Serialization/Arrays"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soapenv:Body>
<elip:SetParams>
<elip:p>
<!--Opção 1-->
<arr:anyType type="string">
qwert
</arr:anyType>
<!--Opção 2-->
<arr:anyType xsi:type="string">
qwert
</arr:anyType>
<!--Opção 3-->
<arr:anyType type="xsd:string">
qwert
</arr:anyType>
<!--Opção 4-->
<arr:anyType xsi:type="xsd:string">
qwert
</arr:anyType>
</elip:p>
</elip:SetParams>
</soapenv:Body>
</soapenv:Envelope>
Os Tags Envelope, Body, SetParams, p e anyType exigem um namespace. O Tag anyType tem o atributo obrigatório type. Os namespaces xsi e xsd não são obrigatórios. A tabela a seguir contém os valores possíveis para namespaces.
Valores possíveis para namespaces
Tipos de dados aceitos pelo Web Service
| Tipo de Dados | Descrição |
|---|---|
| boolean | Valor 'true' ou 'false', representado em uma aplicação por 1 (um) ou 0 (zero), respectivamente |
| char | Um caractere ASCII, representado em uma aplicação como um valor entre 0 (zero) e 127 |
| byte | Valor numérico entre -128 e 127 |
| unsignedByte | Valor numérico entre 0 (zero) e 255 |
| short | Valor numérico entre -32768 e 32767 |
| unsignedShort | Valor numérico entre 0 (zero) e 65535 |
| int | Valor numérico entre -2147483648 e 2147483647 |
| integer | |
| unsignedInt | Valor numérico entre 0 (zero) e 4294967295 |
| long | Valor numérico entre -2147483648 e 2147483647 |
| unsignedLong | Valor numérico entre 0 (zero) e 4294967295 |
| double | Valor numérico de ponto flutuante com 64 bits e 15 dígitos de precisão |
| decimal | |
| float | Valor numérico de ponto flutuante com 32 bits e 6 (seis) dígitos de precisão |
| dateTime | Data e hora, no formato yyyy-mm-ddThh:mm:ss.sss (Ano-Mês-DiaTHora:Minuto:Segundo.Milissegundo), em que os milissegundos são opcionais |
| string | Interpretado como um texto ou cadeia de caracteres |
| anyURI | |
| base64Binary | |
| QName | |
| anyType | Interpretado como string, long ou double |
Para mais informações, consulte o artigo Enviando dados ao E3 através de web services .NET no Elipse Knowledgebase.