示例#1
0
        public void FaresRequest_Serialize_ShouldNotFail()
        {
            var request = new FaresRequest();

            request.Query                  = new FaresQuery();
            request.Query.Params           = new FaresQueryParams();
            request.Query.Params.Departure = "MOW";
            request.Query.Params.Arrival   = "LON";
            request.Query.Params.Company   = "BT";

            var serializedRequest = SerializationHelper.Serialize(request);
            var xmlRequest        = XDocument.Parse(serializedRequest);

            var fares = xmlRequest.Element("sirena").Element("query").Element("fares");

            Assert.True(fares.Element("departure").Value == "MOW");
            Assert.True(fares.Element("arrival").Value == "LON");
            Assert.True(fares.Element("deptdate") == null);
            Assert.True(fares.Element("bookdate") == null);
            Assert.True(fares.Element("company").Value == "BT");
            Assert.True(fares.Element("flight") == null);
            Assert.True(fares.Elements("subclass").Count() == 0);
            Assert.True(fares.Element("baseclass") == null);
            Assert.True(fares.Element("passenger") == null);
            Assert.True(fares.Element("request_params") == null);
        }
        public static async Task Main(string[] args)
        {
            var initialization = await QueryInitializationAsync();

            using (var client = new AirlineClient())
            {
                var request = new FaresRequest(initialization.Id);

                var response = await client.FaresAsync(request);

                Console.WriteLine($"[Search result]: {response.Arln.Count} airlines found.");

                foreach (var airline in response.Arln)
                {
                    Console.WriteLine($"The {airline.N} found {airline.FareVerbose.Count} fares.");
                    foreach (var fare in airline.FareVerbose)
                    {
                        Console.WriteLine($"Fare - [Id: {fare.F} TotalAmount:${fare.TotalAmount}]");
                    }
                }
            }
        }