Запрос мыла логического типа игнорируется .net клиентом - PullRequest
1 голос
/ 24 февраля 2011

Я пытался вызвать метод веб-сервисов через мой проект asp.net.

Я использовал Fiddler для регистрации запроса на мыло. Тем не менее, я обнаружил, что булево значение типа в запросе не было отправлено, остальные типы работают нормально.

Файл xsd определен как:

<xs:complexType name="TestObject">
 <xs:complexContent mixed="false">
  <xs:extension base="com:TestObjectDTO">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="1" name="scenario" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="asap" type="xs:boolean" />
    </xs:sequence>
  </xs:extension>
</xs:complexContent>

Запрос на мыло был зарегистрирован как

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
    <TestObjectDTO xsi:type="TestObject" xmlns="http://ws.com/service/">
     <scenario>scenario_1</scenario>
    </TestObjectDTO>
</soap:Body>

Элемент как можно скорее отсутствовал. Есть идеи?

спасибо.

Ответы [ 2 ]

2 голосов
/ 24 февраля 2011
<xs:element minOccurs="0" maxOccurs="1" name="asap" type="xs:boolean" />

minOccurs = "0" означает, что это необязательно, и не должно появляться в запросе.Если не указано значение по умолчанию, я предполагаю, что по умолчанию оно будет равно false, или оно может быть представлено обнуляемым типом.

0 голосов
/ 15 сентября 2011

Мы только что натолкнулись на это, и похоже, что .NET генерирует два поля, которые вы можете изменить

.asap .asapSpecified

Когда мы установили оба в true, это сработало

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...