void populateConnectedTrain(ConnetedTrainViewModel connectedTrain) { List <ConnectedTrain> connectedTrains = connectedTrain.connectedTrains; foreach (ConnectedTrain item in connectedTrains) { formatConnectedTrainItem(item); } lsConnectedTrainResult.ItemsSource = connectedTrains; }
ScheduleDetailViewModel getScheduleDetailObj(TRAINQUERY trainQuery, TrainsList2 trainList) { ScheduleDetailViewModel scheduleDetailObj = new ScheduleDetailViewModel(); RecordHeader recordHeader = trainList.recordHeader[0]; List <ConnectedTrain> connectedTrains = trainList.connectedTrains; DateTime dtArrivalTime = DateTime.ParseExact(recordHeader.startArrivalTime, "HH:mm:ss", CultureInfo.InvariantCulture); DateTime dtDepartureTime = DateTime.ParseExact(recordHeader.startDepartureTime, "HH:mm:ss", CultureInfo.InvariantCulture); DateTime dtArrivalTimeEndStation = DateTime.ParseExact(recordHeader.endArrivalTime, "HH:mm:ss", CultureInfo.InvariantCulture); TimeSpan ts = dtArrivalTimeEndStation.Subtract(dtDepartureTime).Duration(); if (dtDepartureTime > dtArrivalTimeEndStation) { dtArrivalTimeEndStation = dtArrivalTimeEndStation.AddDays(1.0); } ConnetedTrainViewModel connectedTrain = new ConnetedTrainViewModel(); string arrivalTime = dtArrivalTime.ToString("h:mm", CultureInfo.CurrentCulture); string arrivalTimeEndStation = dtArrivalTimeEndStation.ToString("h:mm", CultureInfo.CurrentCulture); string departureTime = dtArrivalTime.ToString("h:mm", CultureInfo.CurrentCulture); string departureTimeZone = dtDepartureTime.ToString("tt", CultureInfo.CurrentCulture); string arrivalTimeZone = dtDepartureTime.ToString("tt", CultureInfo.CurrentCulture); string arrivalTimeEndStationZone = dtArrivalTimeEndStation.ToString("tt", CultureInfo.CurrentCulture); connectedTrain.connectedTrains = connectedTrains; scheduleDetailObj.startStationId = trainQuery.startStaion; scheduleDetailObj.endStationId = trainQuery.endStaion; scheduleDetailObj.detailHeader = string.Format(APPCONTEXT.sheduleListHeader, recordHeader.startName, recordHeader.endName).ToLower(); scheduleDetailObj.departureTime = string.Format(APPCONTEXT.sceduleDetailTimeHeader, dtDepartureTime.DayOfWeek.ToString(), departureTime, departureTimeZone); scheduleDetailObj.arrivalTime = string.Format(APPCONTEXT.sceduleDetailTime, arrivalTime, arrivalTimeZone); scheduleDetailObj.arrivalTimeEndStation = string.Format(APPCONTEXT.sceduleDetailTime, arrivalTimeEndStation, arrivalTimeZone); scheduleDetailObj.travelTime = String.Format(APPCONTEXT.sheduleListDuration, ts.ToString(@"hh\:mm")); scheduleDetailObj.startStationName = AppUtility.ToCamelCase(recordHeader.startName); scheduleDetailObj.endStationName = AppUtility.ToCamelCase(recordHeader.endName); scheduleDetailObj.trainType = APPCONTEXT.globalConnectedTrain; scheduleDetailObj.connectedTrain = connectedTrain; return(scheduleDetailObj); }