
Thanks to Scott Hanselman’s tweet. I went off and had an enjoyable couple of hours building Jerrie Pelser’s Airport Explorer and learnt a lot more than I was expecting.
Firstly the app is a single page ASP.NET Razor application, something I didn’t even know existed but now will be my first choice to use when developing an upcoming ToDo list requirement. I used the Mapbox and Google places API’s for the first time.
The Google API was particularly interesting because it has moved on since Jerrie’s book which meant that one particular line of code would not compile:
if (photosResponse.PhotoBuffer != null)
{
airportDetail.Photo = Convert.ToBase64String(photosResponse.PhotoBuffer);
airportDetail.PhotoCredit = photoCredit;
}
The Google API I was using was version 3.6.1 which meant that the project would not compile with the reference to PhotoBuffer (shown in bold above) Reviewing Jerrie’s completed example on GitHub and I saw that the Google API used was version 3.2.10. So I learnt to install a particular version using the Package Manager Console
install-package googleapi -version 3.2.10
In addition my debugging skills were exercised when bad data kept my page from loading. It took a little while but I traced the problem to this line of code
using (var reader = new CsvReader(sr, configuration))
and I had forgotten to add the entry in bold which handled the bad data!
I used GitKraken for the first time to manage my Git interactions and learnt how to undo a commit after remembering that I had left my API credentials in the source code!
My version of the Airport Explorer can be found here.