Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Hosted-services / Azure

Quiz Engine powered by Azure cloud

4.64/5 (4 votes)
17 Feb 2015CPOL3 min read 46.1K  
NY Trivia Quiz w/backend Database migration to Azure cloud

Introduction

The article is an entry to Windows Azure Developer Challenge, addressing both practical and didactic aspects of Azure project development:

  1. First Challenge: Getting Started. Done  
  2. Second Challenge: Build a website. Done
  3. Third Challenge: Using SQL on Azure. Work in progress
  4. Fourth Challenge: Virtual Machines. On schedule 
  5. Fifth Challenge: Mobile access. On schedule 

The main goal of this Azure challenge project is to upgrade the application backend to run on more powerful SQL engine (expecting better scalability/responsiveness) and migrate the app to Azure cloud platform (expecting simplified application maintenance, monitoring and change management).

BENEFITS FROM MIGRATION TO AZURE 

  • From a Web developer perspective, it's like a web hosting service, but a really good one. I found web deployment and change management to be rather straightforward and reliable process.
  • Scalability would be another potential benefit of migration to Azure cloud.
  • Intrinsic modularity of Azure platform is adding huge value to web development, and future project enhancements/upscaling. 
  • Multiple web project integration on Azure seems to be relatively easy process due to modularity (mentioned in the previous line item 3) and efficient resource sharing. 
  • Data Layer is of particular interest to me. There has been an issue with my current host service provider when I tried to find reliable/simple SQL server backup/restore/migration procedure pertinent to my multiple remote DB. I hope that Azure team has properly addressed that quintessential issue. In particular, I would like to have installed multiple file-based DB (like "good-old" Microsoft Access .mdb, or the latest newcomer SQL Server 2012 Express edition .mdf files), which I can simply copy-paste to another web app upon necessity with minimal DB-connectivity headache.
  • I am rather satisfied with my practical experience of creating the fully-functional Engineering Calculator web app and its migration to Azure cloud platform [1,2].

Background 

Existing app (NY Trivia Quiz) is currently implemented as ASP.NET/HTML5 web application powered by synergetic technology set: ASP.NET, C#, ADO.NET, SQL, CSS3, Ajax and jQuery (see sample screenshots of said web app):  

Online Quiz Engine: Azure Contest Article

Fig. 1. NY online trivia-quiz, updated daily (sample screenshot)

Online Quiz Engine: Azure Contest Article

Fig. 2. NY online trivia-quiz sample screenshot

Online Quiz Engine: Azure Contest Article

Fig. 3. NY online trivia-quiz sample screenshot

Online Quiz Engine: Azure Contest Article

Fig. 4. NY online trivia-quiz sample screenshot

Application content (continuously updating) has been created by author and shortly after its first introduction became rather popular among fellow New Yorkers, and also nationwide.

Using the code 

Coding technique pertinent to this project was partially discussed on Codeproject [4...8]. More code snippets will be added as the work progressing.

Points of Interest

A minor side issue has been resolved in a context of this project, namely: conversion from the Microsoft Access (.mdb) to SQL Server Express (.mdf) file. There are (at least) two options available: 

  • Database Tools (upsize wizard) included in MS Access  (I am using Office 2010)
  •  Import and Export tool in SQL Server  (I am using SQL Server 2012 Express edition)

I had previous experience with bot of them, and do prefer the latter for this job.

History 

  • 04/26/2013: Existing Quiz engine was encapsulated in .ascx for better modularity
  • 04/29/2013: Microsoft Access database converted to SQL Server Express edition (.mdf file)
  • 05/04/2013: Dedicated web site has been added to Azure account ("nyc")
  • 05/08/2013 Azure Storage account was created to hold .bacpac file

References    

  1. Azure web app: Engineering Calculator VOLTMATTER
  2. Azure-Volta 2013 Engineering Calculator is up and running!
  3. Azure web app: New York City real-time bus tracking
  4. Click/select Row in ASP.NET GridView or HTML Table
  5. HTML5 Tables formatting: alternate rows, color gradients, shadows
  6. HTML5/CSS3 graphic enhancement: buttons, inputs
  7. Advanced CSS3 Styling of HTML5 SELECT Element
  8. HTML5 Tables Formatting: Alternate Rows, Color Gradients, Shadows

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)