我在saber的webservices中使用C#在ASP.NET中工作,我正在尝试调用wwebservice airlowfaresearch并且没关系,但我会努力让讨价还价最大替换日期,我使用了这个:webservices.sabre.com/wsdl/sabreXML1.0.00/tpf/OTA_AirLowFareSearchLLS1.13.1RQ.wsdl
并更改了:BargainFinderMax_ADRQ
的操作,这是我的要求:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_AirLowFareSearchRQ AltLangID="en-us" PrimaryLangID="en-us" SequenceNmbr="1" Version="3.1.0" Target="Test" TimeStamp="0001-01-01T12:00:00" EchoToken="String" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<POS>
<Source PseudoCityCode="X0JA"/>
</POS>
<OriginDestinationInformation RPH="1">
<DepartureDateTime>2017-06-07</DepartureDateTime>
<OriginLocation LocationCode="LIM"/>
<DestinationLocation LocationCode="AQP"/>
<TPA_Extensions>
<SegmentType Code="O"/>
<WithoutAvail/>
</TPA_Extensions>
</OriginDestinationInformation>
<OriginDestinationInformation RPH="2">
<DepartureDateTime>2017-06-10</DepartureDateTime>
<OriginLocation LocationCode="AQP"/>
<DestinationLocation LocationCode="LIM"/>
<TPA_Extensions>
<SegmentType Code="O"/>
<WithoutAvail/>
</TPA_Extensions>
</OriginDestinationInformation>
<TravelPreferences MaxStopsQuantity="2">
<CabinPref RPH="1" Code="Y"/>
<CabinPref RPH="2" Code="Y"/>
<TPA_Extensions>
<ExcludeVendorPref Code="2I"/>
<ExcludeVendorPref Code="UA"/>
<ExcludeVendorPref Code="IB"/>
<NumTrips Number="19"/>
</TPA_Extensions>
</TravelPreferences>
<TravelerInformation>
<PassengerTypeQuantity Code="ADT" Quantity="1"/>
<TPA_Extensions/>
</TravelerInformation>
<PriceRequestInformation CurrencyCode="USD">
<TPA_Extensions>
<FareCalc>
<FareBasis WithFareCalc="true"/>
</FareCalc>
<Priority>
<Price Priority="1"/>
<DirectFlights Priority="2"/>
<Time Priority="3"/>
<Vendor Priority="4"/>
</Priority>
</TPA_Extensions>
</PriceRequestInformation>
<TPA_Extensions>
<IntelliSellTransaction>
<RequestType Name="AD3"/>
</IntelliSellTransaction>
</TPA_Extensions>
</OTA_AirLowFareSearchRQ>
但在响应中找不到对象oAirLowFareSearchRS
oAirLowFareSearchRS = oAirLowFareSearchRQService.OTA_AirLowFareSearchRQ(oAirLowFareSearchRQ)
我收到此错误:
对象引用未设置为对象的实例。
和xml仅响应:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_AirLowFareSearchRS xsi:nil="true" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
这个问题的原因是什么?
答案 0 :(得分:1)
以下是为您执行BFM_AD请求的示例:
<soapenv:Body>
<OTA_AirLowFareSearchRQ AvailableFlightsOnly="true" ResponseType="OTA" ResponseVersion="3.0.0" Version="3.0.0" xmlns="http://www.opentravel.org/OTA/2003/05">
<POS>
<Source PseudoCityCode="***">
<RequestorID ID="1" Type="1">
<CompanyName Code="TN"/>
</RequestorID>
</Source>
</POS>
<OriginDestinationInformation RPH="1">
<DepartureDateTime>2017-06-15T00:00:00</DepartureDateTime>
<DepartureWindow>00002359</DepartureWindow>
<OriginLocation LocationCode="LIM" LocationType="A"/>
<DestinationLocation LocationCode="AQP" LocationType="A"/>
<TPA_Extensions>
<SegmentType Code="O"/>
</TPA_Extensions>
</OriginDestinationInformation>
<OriginDestinationInformation RPH="2">
<DepartureDateTime>2017-06-18T00:00:00</DepartureDateTime>
<DepartureWindow>00002359</DepartureWindow>
<OriginLocation LocationCode="AQP" LocationType="A"/>
<DestinationLocation LocationCode="LIM" LocationType="A"/>
<TPA_Extensions>
<SegmentType Code="O"/>
</TPA_Extensions>
</OriginDestinationInformation>
<TravelPreferences ETicketDesired="true" ValidInterlineTicket="true">
<TPA_Extensions>
<TripType Value="Return"/>
<FlightStopsAsConnections Ind="true"/>
<ExcludeCallDirectCarriers Enabled="true"/>
</TPA_Extensions>
<Baggage Description="true" RequestType="A"/>
</TravelPreferences>
<TravelerInfoSummary>
<SeatsRequested>1</SeatsRequested>
<AirTravelerAvail>
<PassengerTypeQuantity Code="ADT" Quantity="1"/>
</AirTravelerAvail>
<PriceRequestInformation CurrencyCode="TRY" NegotiatedFaresOnly="false">
<TPA_Extensions>
<BrandedFareIndicators MultipleBrandedFares="true"/>
</TPA_Extensions>
</PriceRequestInformation>
</TravelerInfoSummary>
<TPA_Extensions>
<IntelliSellTransaction>
<RequestType Name="AD3"/>
</IntelliSellTransaction>
</TPA_Extensions>
</OTA_AirLowFareSearchRQ>
</soapenv:Body>
我建议您从工作请求开始,在获得成功回复后,您应该专门针对您的需求提出要求。