PurpleSmoke: Ecommerce for SkyPoint

Posted by on

So in my day job I work for a company called Ardent Leisure, and lately I have been working on a massive project to build an integrated ecommerce engine for SkyPoint, Dreamworld and WhiteWater World. I thought I might take some time to talk about the technologies used here, being a .NET developer I kept pretty close to the Microsoft Stack, with a few open source libraries in the mix.

framework Microsoft ASP.NET
language C# (.NET v4.0)
development environment Visual Studio 2010
web frameworks ASP.NET MVC3
client side framework JQuery (+ UI and tmpl)
web service layer Windows Communication Framework
database SQL Server 2008 R2
data access layer LINQ to SQL
source control Team Foundation Server 2010


3rd Party Tools:


Winning Combinations:

For me their are a few winning combinations here:

1. RestSharp + Newtonsoft JSON.NET + WCF.

Now my love for RestSharp has been widely documented but I cant say it enough, this is an awesome library and using it with a WCF web service was great. However this combination is not without its flaws, mianly DateTimes in WCF. But I was able to get around this "Feature" by creating my own WCFDate Class which serialises to and from a formatted string. This was quite a hack but its working pretty well for us at the moment.

2. Knockout + Jquery + tmpl.

This was the first project that I have actually used Knockout for and it did take some time to get up to speed on how it all works together but now I couldn't imagine doing this project without it. It gave us the flexibility we needed to display the data we needed where ever we wanted.


You can find PurpleSmoke lurking among the CMS Pages at www.skypoint.com.au