У меня есть конечная точка WSDL, которую я добавил в свой проект в качестве справочника службы, называемого ContentService, отлично работает.Передача параметров сложного типа в веб-службу
Тогда в моем коде, я объявляю клиента, и соответствующий запрос, UnitInfo так:
// Both of these declarations work fine
ContentService.ContentServiceClient client = new ContentService.ContentServiceClient();
ContentService.UnitInfo request = new ContentService.UnitInfo();
Мне нужно пройти в следующую информацию, хотя:
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
<Body>
<UnitInfo xmlns="http://www.acme.com/acme/2007/02">
<!-- Optional -->
<POS>
<!-- Optional -->
<Source>
</Source>
</POS>
<!-- Optional -->
<UnitInfos>
<!-- Optional -->
<Units HowMany="?">
<!-- Optional -->
<Amenities/>
<!-- Optional -->
</Units>
</UnitInfos>
</UnitInfo>
</Body>
</Envelope>
проблема в том, что моя переменная запроса имеет значение null для свойства UnitInfos, как я могу установить атрибут «HowMany» в разделе «Единицы» перед отправкой. Также, как отправить запрос на конечную точку?
Все примеры в Интернете показывают простой добавление, в котором вы отправляете два ввода, но здесь мне нужно отправить более сложную структуру.
Это не имеет никакого отношения к веб-сервисам. Вам просто нужно заполнить правильный экземпляр вашего класса запросов. Как вы ожидаете, что какой-либо «UnitInfos» будет создан, если вы не создадите ни одного из них? Магия? –